activemq-cpp-3.9.5
AprPool.h
Go to the documentation of this file.
1/*
2 * Licensed to the Apache Software Foundation (ASF) under one or more
3 * contributor license agreements. See the NOTICE file distributed with
4 * this work for additional information regarding copyright ownership.
5 * The ASF licenses this file to You under the Apache License, Version 2.0
6 * (the "License"); you may not use this file except in compliance with
7 * the License. You may obtain a copy of the License at
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 */
17
18#ifndef _DECAF_INTERNAL_APRPOOL_H_
19#define _DECAF_INTERNAL_APRPOOL_H_
20
21#include <decaf/util/Config.h>
22
23#include <apr_pools.h>
24
25namespace decaf{
26namespace internal{
27
33 class DECAF_API AprPool {
34 private:
35
39 mutable apr_pool_t* aprPool;
40
41 private:
42
43 AprPool(const AprPool& pool);
44 AprPool& operator=(const AprPool& pool);
45
46 public:
47
49 virtual ~AprPool();
50
55 apr_pool_t* getAprPool() const;
56
62 void cleanup();
63
68 static apr_pool_t* getGlobalPool();
69
70 private:
71
75 void allocatePool() const;
76
80 void destroyPool();
81
82 };
83
84}}
85
86#endif /*_DECAF_INTERNAL_APRPOOL_H_*/
void cleanup()
Clears data that was allocated by this pool.
static apr_pool_t * getGlobalPool()
Gets a pointer to the Global APR Pool used for the Application.
apr_pool_t * getAprPool() const
Gets the internal APR Pool.
#define DECAF_API
Definition Config.h:29
Definition AprPool.h:26
Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.
Definition AprPool.h:25