OpenMPI 0.1.1

- Main Page
- Related Pages
- Modules
- Data Structures
- Files

- File List
- Globals

vt_unify_tkfac.h
1 /**
2 * VampirTrace
3 * http://www.tu-dresden.de/zih/vampirtrace
4 *
5 * Copyright (c) 2005-2012, ZIH, TU Dresden, Federal Republic of Germany
6 *
7 * Copyright (c) 1998-2005, Forschungszentrum Juelich, Juelich Supercomputing
8 * Centre, Federal Republic of Germany
9 *
10 * See the file COPYING in the package base directory for details
11 **/
12
13 #ifndef _VT_UNIFY_TKFAC_H_
14 #define _VT_UNIFY_TKFAC_H_
15
16 #include "config.h"
17
18 #include "vt_unify_defs_recs.h"
19 #include "vt_unify_tkfac_scope.h"
20
21 //
22 // TokenFactory class
23 //
24 class TokenFactoryC
25 {
26 public:
27
28 // constructor
29 TokenFactoryC();
30
31 // destructor
32 ~TokenFactoryC();
33
34 // add scope instance of certain def. record type
35 void addScope( const DefRecTypeT & type, TokenFactoryScopeI * scope );
36
37 // delete scope instance for certain def. record type
38 void deleteScope( const DefRecTypeT & type );
39
40 // get scope instance for certain def. record type
41 TokenFactoryScopeI * getScope( const DefRecTypeT & type ) const;
42
43 #ifdef VT_MPI
44
45 // distribute token translation tables
46 bool distTranslations( const VT_MPI_INT & destRank = 0,
47 const bool wait = false );
48
49 #endif // VT_MPI
50
51 private:
52
53 // map def. type <-> scope
54 std::map<DefRecTypeT, TokenFactoryScopeI*> m_def2scope;
55
56 };
57
58 // instance of class TokenFactory
59 extern TokenFactoryC * theTokenFactory;
60
61 #endif // _VT_UNIFY_TKFAC_H_
TokenFactoryC
VampirTrace http://www.tu-dresden.de/zih/vampirtrace.
Definition: vt_unify_tkfac.h:24
TokenFactoryScopeI
VampirTrace http://www.tu-dresden.de/zih/vampirtrace.
Definition: vt_unify_tkfac_scope.h:28