Xalan-C++ API Reference
1.12.0
xalanc
XercesParserLiaison
Deprecated
XercesTextBridgeAllocator.hpp
Go to the documentation of this file.
1
/*
2
* Licensed to the Apache Software Foundation (ASF) under one
3
* or more contributor license agreements. See the NOTICE file
4
* distributed with this work for additional information
5
* regarding copyright ownership. The ASF licenses this file
6
* to you under the Apache License, Version 2.0 (the "License");
7
* you may not use this file except in compliance with the License.
8
* You may obtain a copy of the License at
9
*
10
* http://www.apache.org/licenses/LICENSE-2.0
11
*
12
* Unless required by applicable law or agreed to in writing, software
13
* distributed under the License is distributed on an "AS IS" BASIS,
14
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
* See the License for the specific language governing permissions and
16
* limitations under the License.
17
*/
18
19
#if !defined(XERCESTEXTBRIDGEALLOCATOR_INCLUDE_GUARD_12455133)
20
#define XERCESTEXTBRIDGEALLOCATOR_INCLUDE_GUARD_12455133
21
22
23
24
#include <
xalanc/XercesParserLiaison/XercesParserLiaisonDefinitions.hpp
>
25
26
27
28
#include <
xalanc/PlatformSupport/ArenaAllocator.hpp
>
29
30
31
32
#include <
xalanc/XercesParserLiaison/Deprecated/XercesTextBridge.hpp
>
33
34
35
36
namespace
XALAN_CPP_NAMESPACE
{
37
38
39
/**
40
* This class is deprecated.
41
*
42
* @deprecated This class works with the deprecated Xerces DOM bridge.
43
*/
44
class
XALAN_XERCESPARSERLIAISON_EXPORT
XercesTextBridgeAllocator
45
{
46
public
:
47
48
typedef
XercesTextBridge
ObjectType
;
49
50
51
#if defined(XALAN_NO_DEFAULT_TEMPLATE_ARGUMENTS)
52
typedef
ArenaBlock<ObjectType>
ArenaBlockType;
53
54
typedef
ArenaAllocator
<
ObjectType
,
55
ArenaBlockType>
ArenaAllocatorType
;
56
#else
57
typedef
ArenaAllocator<ObjectType>
ArenaAllocatorType
;
58
#endif
59
60
typedef
ArenaAllocatorType::size_type
size_type
;
61
62
/**
63
* Construct an instance that will allocate blocks of the specified size.
64
*
65
* @param theBlockSize The block size.
66
*/
67
XercesTextBridgeAllocator
(
size_type
theBlockCount);
68
69
~
XercesTextBridgeAllocator
();
70
71
/**
72
* Create a XercesTextBridge instance.
73
*
74
* @param theXercesText The Xerces text node
75
* @param theNavigator The navigator for this instance.
76
*
77
* @return pointer to the instance
78
*/
79
ObjectType
*
80
create(
81
const
DOM_TextType
& theXercesText,
82
const
XercesBridgeNavigator
& theNavigator);
83
84
/**
85
* Delete all objects from allocator.
86
*/
87
void
88
reset();
89
90
/**
91
* Get size of an ArenaBlock, that is, the number
92
* of objects in each block.
93
*
94
* @return The size of the block
95
*/
96
size_type
97
getBlockCount
()
const
98
{
99
return
m_allocator.getBlockCount();
100
}
101
102
/**
103
* Get the number of ArenaBlocks currently allocated.
104
*
105
* @return The number of blocks.
106
*/
107
size_type
108
getBlockSize
()
const
109
{
110
return
m_allocator.getBlockSize();
111
}
112
113
private
:
114
115
// Not implemented...
116
XercesTextBridgeAllocator
(
const
XercesTextBridgeAllocator
&);
117
118
XercesTextBridgeAllocator
&
119
operator=(
const
XercesTextBridgeAllocator
&);
120
121
// Data members...
122
ArenaAllocatorType m_allocator;
123
};
124
125
126
127
}
128
129
130
131
#endif // XERCESTEXTBRIDGEALLOCATOR_INCLUDE_GUARD_12455133
xalanc::ArenaAllocator< ObjectType >::size_type
ArenaBlock< ObjectType > ::size_type size_type
Definition:
ArenaAllocator.hpp:55
XALAN_CPP_NAMESPACE
#define XALAN_CPP_NAMESPACE
Xalan-C++ namespace, including major and minor version.
Definition:
XalanVersion.hpp:76
xalanc::XercesTextBridgeAllocator::ArenaAllocatorType
ArenaAllocator< ObjectType > ArenaAllocatorType
Definition:
XercesTextBridgeAllocator.hpp:57
xalanc::XercesTextBridgeAllocator::getBlockCount
size_type getBlockCount() const
Get size of an ArenaBlock, that is, the number of objects in each block.
Definition:
XercesTextBridgeAllocator.hpp:97
xalanc::size_type
size_t size_type
Definition:
XalanMap.hpp:46
xalanc::ArenaBlock< ObjectType >
xalanc::XercesTextBridgeAllocator
This class is deprecated.
Definition:
XercesTextBridgeAllocator.hpp:44
xalanc::XercesTextBridgeAllocator::getBlockSize
size_type getBlockSize() const
Get the number of ArenaBlocks currently allocated.
Definition:
XercesTextBridgeAllocator.hpp:108
XercesTextBridge.hpp
xalanc::ArenaAllocator
Definition:
ArenaAllocator.hpp:47
ArenaAllocator.hpp
XercesParserLiaisonDefinitions.hpp
xalanc::DOM_TextType
xercesc::DOM_Text DOM_TextType
Definition:
XercesBridgeTypes.hpp:75
xalanc::XercesTextBridge
This class is deprecated.
Definition:
XercesTextBridge.hpp:54
XALAN_XERCESPARSERLIAISON_EXPORT
#define XALAN_XERCESPARSERLIAISON_EXPORT
Definition:
XercesParserLiaisonDefinitions.hpp:39
xalanc::XercesBridgeNavigator
This class is deprecated.
Definition:
XercesBridgeNavigator.hpp:55
xalanc::XercesTextBridgeAllocator::ObjectType
XercesTextBridge ObjectType
Definition:
XercesTextBridgeAllocator.hpp:48
xalanc::XercesTextBridgeAllocator::size_type
ArenaAllocatorType::size_type size_type
Definition:
XercesTextBridgeAllocator.hpp:60
Copyright © 1999-2020 The Apache Software Foundation. All Rights Reserved.
Generated on Sun May 31 2020 10:37:19 for Xalan-C++ API Reference by
1.8.17