| 36 |
|
* [1] Meineke, et al., J. Comp. Chem. 26, 252-271 (2005). |
| 37 |
|
* [2] Fennell & Gezelter, J. Chem. Phys. 124, 234104 (2006). |
| 38 |
|
* [3] Sun, Lin & Gezelter, J. Chem. Phys. 128, 24107 (2008). |
| 39 |
< |
* [4] Vardeman & Gezelter, in progress (2009). |
| 39 |
> |
* [4] Kuang & Gezelter, J. Chem. Phys. 133, 164101 (2010). |
| 40 |
> |
* [5] Vardeman, Stocker & Gezelter, J. Chem. Theory Comput. 7, 834 (2011). |
| 41 |
|
*/ |
| 42 |
|
|
| 43 |
|
/** |
| 64 |
|
class SimInfo; |
| 65 |
|
|
| 66 |
|
/** |
| 67 |
< |
* @class HydrodynamicsModelFactory HydrodynamicsModelFactory.hpp "UseTheForce/HydrodynamicsModelFactory.hpp" |
| 67 |
> |
* @class HydrodynamicsModelFactory |
| 68 |
|
* Factory pattern and Singleton Pattern are used to define an interface for creating an HydrodynamicsModel. |
| 69 |
|
*/ |
| 70 |
|
class HydrodynamicsModelFactory { |
| 92 |
|
/** |
| 93 |
|
* Registers a creator with a type identifier |
| 94 |
|
* @return true if registration is successful, otherwise return false |
| 95 |
< |
* @id the identification of the concrete object |
| 95 |
< |
* @creator the object responsible to create the concrete object |
| 95 |
> |
* @param creator the object responsible to create the concrete object |
| 96 |
|
*/ |
| 97 |
|
bool registerHydrodynamicsModel(HydrodynamicsModelCreator* creator); |
| 98 |
|
|
| 101 |
|
* was previously registered, the function returns true. |
| 102 |
|
* @return truethe type identifier was previously registered and the creator is removed, |
| 103 |
|
* otherwise return false |
| 104 |
< |
* @id the identification of the concrete object |
| 104 |
> |
* @param id the identification of the concrete object |
| 105 |
|
*/ |
| 106 |
|
bool unregisterHydrodynamicsModel(const std::string& id); |
| 107 |
|
/** |
| 110 |
|
* @return a pointer of the concrete object, return NULL if no creator is registed for |
| 111 |
|
* creating this concrete object |
| 112 |
|
* @param id the identification of the concrete object |
| 113 |
+ |
* @param sd a pointer to the StuntDouble being modeled |
| 114 |
+ |
* @param info a pointer to the SimInfo object |
| 115 |
|
*/ |
| 116 |
|
HydrodynamicsModel* createHydrodynamicsModel(const std::string& id, StuntDouble* sd, SimInfo* info); |
| 117 |
|
|