SvnCpp
pool.hpp
Go to the documentation of this file.
1/*
2 * ====================================================================
3 * Copyright (c) 2002-2018 The RapidSVN Group. All rights reserved.
4 *
5 * This program is free software: you can redistribute it and/or modify
6 * it under the terms of the GNU Lesser General Public License as
7 * published by the Free Software Foundation, either version 3 of the
8 * License, or (at your option) any later version.
9 *
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
14 *
15 * You should have received a copy of the GNU Lesser General Public
16 * License along with this program (in the file LGPL.txt).
17 * If not, see <http://www.gnu.org/licenses/>.
18 *
19 * This software consists of voluntary contributions made by many
20 * individuals. For exact contribution history, see the revision
21 * history and logs, available at http://rapidsvn.tigris.org/.
22 * ====================================================================
23 */
24
25#ifndef _SVNCPP_POOL_H_
26#define _SVNCPP_POOL_H_
27
28// subversion api
29#include "svn_pools.h"
30
31namespace svn
32{
36 class Pool
37 {
38 public:
44 Pool(apr_pool_t * parent = (apr_pool_t *)0);
45
46 virtual ~ Pool();
47
51 apr_pool_t *
52 pool() const;
53
57 operator apr_pool_t * () const
58 {
59 return m_pool;
60 }
61
65 void renew();
66
67 private:
68 apr_pool_t * m_parent;
69 apr_pool_t * m_pool;
70
71 Pool& operator=(const Pool&);
72
73 Pool(const Pool &);
74 };
75}
76
77#endif
78
79/* -----------------------------------------------------------------
80 * local variables:
81 * eval: (load-file "../../rapidsvn-dev.el")
82 * end:
83 */
Definition pool.hpp:37
void renew()
apr_pool_t * pool() const
Pool(apr_pool_t *parent=(apr_pool_t *) 0)
Definition annotate_line.hpp:32