OpenAtom  Version1.5a
pcBuilder.h
1 #include "debug_flags.h"
2 #include "pcConfig.h"
3 #include "pcInstanceIDs.h"
4 #include "pcMapConfig.h"
5 #include "load_balance/PeList.h"
6 #include "load_balance/IntMap.h"
7 
8 #include "charm++.h"
9 
10 #ifndef PC_BUILDER_H
11 #define PC_BUILDER_H
12 /** @addtogroup PairCalculator
13  @{
14 */
15 
16 namespace cp {
17  namespace paircalc {
18 
19 /// A class that orchestrates the mapping and creation of one paircalc array and accompanying chares like InputDataHandler etc.
20 class Builder
21 {
22  public:
23  /// Always charge a builder with creating one paircalc array
24  Builder(const pcConfig &_cfg): cfg(_cfg) {}
25  /// Trigger the creation of a pc array with the given configs, within the given pes/boxes etc
26  InstanceIDs build(const startup::PCMapConfig &mapCfg);
27 
28  private:
29  /// Create the mapping required to instantiate a PC array
30  void createMap(const startup::PCMapConfig &mapCfg);
31  /// Create a paircalc array using info in the supplied pcConfig object
32  void createPairCalcs();
33 
34 
35  /// The configs for the paircalc array that I am charged with building
36  const pcConfig cfg;
37  /// The result of an array build
39 };
40 
41  } // end namespace paircalc
42 } // end namespace cp
43 /*@}*/
44 #endif // PC_BUILDER_H
45 
InstanceIDs build(const startup::PCMapConfig &mapCfg)
Trigger the creation of a pc array with the given configs, within the given pes/boxes etc...
Definition: pcBuilder.C:18
void createMap(const startup::PCMapConfig &mapCfg)
Create the mapping required to instantiate a PC array.
Definition: pcBuilder.C:50
const pcConfig cfg
The configs for the paircalc array that I am charged with building.
Definition: pcBuilder.h:36
A container for assorted mapping inputs to pass around easily.
Definition: pcMapConfig.h:15
void createPairCalcs()
Create a paircalc array using info in the supplied pcConfig object.
Definition: pcBuilder.C:161
Author: Eric J Bohm Date Created: June 4th, 2006.
InstanceIDs pcHandle
The result of an array build.
Definition: pcBuilder.h:38
Dumb structure that holds all the configuration inputs required for paircalc instantiation, functioning and interaction.
Definition: pcConfig.h:23
Builder(const pcConfig &_cfg)
Always charge a builder with creating one paircalc array.
Definition: pcBuilder.h:24
Useful debugging flags.
A class that orchestrates the mapping and creation of one paircalc array and accompanying chares like...
Definition: pcBuilder.h:20
A tiny structure to hold the relevant IDs/ proxies required to interact with a paircalc instance...
Definition: pcInstanceIDs.h:11
Author: Eric J Bohm Date Created: May 31, 2006.