Xalan-C++ API Reference 1.12.0
XalanReferenceCountedObject.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#if !defined(XALANREFERENCECOUNTEDOBJECT_HEADER_GUARD_1357924680)
19#define XALANREFERENCECOUNTEDOBJECT_HEADER_GUARD_1357924680
20
21
22
23// Base include file. Must be first.
25
26
27
28namespace XALAN_CPP_NAMESPACE {
29
30
31
32/**
33 * Class to hold reference count information.
34 */
36{
37public:
38
39 /**
40 * Increment reference count.
41 */
42 static void
44
45 /**
46 * Decrement reference count.
47 */
48 static void
50
51protected:
52
53 /**
54 * Create a XalanReferenceCountedObject.
55 */
56 explicit
58
59 virtual
61
62 virtual void
64
65 virtual void
67
68 virtual XalanSize_t
70 {
71 return m_referenceCount;
72 }
73
74private:
75
76 XalanSize_t m_referenceCount;
77
78 // Not implemented...
80 operator=(const XalanReferenceCountedObject&);
81
83};
84
85
86
87}
88
89
90
91#endif // XALANREFERENCECOUNTEDOBJECT_HEADER_GUARD_1357924680
#define XALAN_PLATFORMSUPPORT_EXPORT
#define XALAN_CPP_NAMESPACE
Xalan-C++ namespace, including major and minor version.
Class to hold reference count information.
XalanReferenceCountedObject()
Create a XalanReferenceCountedObject.
static void removeReference(XalanReferenceCountedObject *theInstance)
Decrement reference count.
static void addReference(XalanReferenceCountedObject *theInstance)
Increment reference count.