Sacado Package Browser (Single Doxygen Collection)
Version of the Day
src
Sacado_Fad_MemPoolManager.hpp
Go to the documentation of this file.
1
// $Id$
2
// $Source$
3
// @HEADER
4
// ***********************************************************************
5
//
6
// Sacado Package
7
// Copyright (2006) Sandia Corporation
8
//
9
// Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation,
10
// the U.S. Government retains certain rights in this software.
11
//
12
// This library is free software; you can redistribute it and/or modify
13
// it under the terms of the GNU Lesser General Public License as
14
// published by the Free Software Foundation; either version 2.1 of the
15
// License, or (at your option) any later version.
16
//
17
// This library is distributed in the hope that it will be useful, but
18
// WITHOUT ANY WARRANTY; without even the implied warranty of
19
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
20
// Lesser General Public License for more details.
21
//
22
// You should have received a copy of the GNU Lesser General Public
23
// License along with this library; if not, write to the Free Software
24
// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301
25
// USA
26
// Questions? Contact David M. Gay (dmgay@sandia.gov) or Eric T. Phipps
27
// (etphipp@sandia.gov).
28
//
29
// ***********************************************************************
30
// @HEADER
31
32
#ifndef SACADO_FAD_MEMPOOLMANAGER_HPP
33
#define SACADO_FAD_MEMPOOLMANAGER_HPP
34
35
#include <map>
36
37
#include "
Sacado_Fad_MemPool.hpp
"
38
39
namespace
Sacado
{
40
41
namespace
Fad {
42
44
template
<
typename
T>
45
class
MemPoolManager
{
46
47
public
:
48
50
MemPoolManager
(
unsigned
int
nfad);
51
53
~MemPoolManager
();
54
56
MemPool
*
getMemoryPool
(
unsigned
int
dim);
57
58
private
:
59
61
MemPoolManager
(
const
MemPoolManager
&);
62
64
MemPoolManager
&
operator=
(
const
MemPoolManager
&);
65
66
protected
:
67
69
unsigned
int
num_fad
;
70
72
typedef
std::map<unsigned int, MemPool*>
MapType
;
73
75
MapType
poolMap
;
76
77
};
78
79
}
// namespace Fad
80
81
}
// namespace Sacado
82
83
// Include implementation
84
#include "
Sacado_Fad_MemPoolManagerImp.hpp
"
85
86
#endif // SACADO_FAD_MEMPOOLMANAGER_HPP
Sacado_Fad_MemPoolManagerImp.hpp
Sacado::Fad::MemPoolManager::num_fad
unsigned int num_fad
Number of Fad objects per chunk.
Definition:
Sacado_Fad_MemPoolManager.hpp:69
Sacado::Fad::MemPool
Memory pool.
Definition:
Sacado_Fad_MemPool.hpp:40
Sacado::Fad::MemPoolManager::MapType
std::map< unsigned int, MemPool * > MapType
Typename of memory pool map.
Definition:
Sacado_Fad_MemPoolManager.hpp:72
Sacado::Fad::MemPoolManager::getMemoryPool
MemPool * getMemoryPool(unsigned int dim)
Get memory pool for supplied dimension dim.
Definition:
Sacado_Fad_MemPoolManagerImp.hpp:51
Sacado::Fad::MemPoolManager::~MemPoolManager
~MemPoolManager()
Destructor.
Definition:
Sacado_Fad_MemPoolManagerImp.hpp:42
Sacado
Definition:
Sacado_mpl_apply.hpp:39
Sacado::Fad::MemPoolManager::MemPoolManager
MemPoolManager(unsigned int nfad)
Constructor.
Definition:
Sacado_Fad_MemPoolManagerImp.hpp:34
Sacado::Fad::MemPoolManager::poolMap
MapType poolMap
Map of memory pools.
Definition:
Sacado_Fad_MemPoolManager.hpp:75
Sacado_Fad_MemPool.hpp
Sacado::Fad::MemPoolManager
Class to manage memory pools for different Fad dimensions.
Definition:
Sacado_Fad_MemPoolManager.hpp:45
Sacado::Fad::MemPoolManager::operator=
MemPoolManager & operator=(const MemPoolManager &)
Private to prohibit copying.
Generated by
1.8.16