36 |
|
|
37 |
|
#include "brains/SimInfo.hpp" |
38 |
|
#include "types/AtomStamp.hpp" |
39 |
< |
#include "types/BpndStamp.hpp" |
39 |
> |
#include "types/BondStamp.hpp" |
40 |
|
#include "types/BendStamp.hpp" |
41 |
|
#include "types/CutoffGroupStamp.hpp" |
42 |
|
#include "types/RigidBodyStamp.hpp" |
43 |
|
#include "types/TorsionStamp.hpp" |
44 |
< |
|
44 |
> |
#include "primitives/Molecule.hpp" |
45 |
|
namespace oopse { |
46 |
|
|
47 |
|
/** |
51 |
|
class MoleculeCreator { |
52 |
|
public: |
53 |
|
virtual Molecule* createMolecule(ForceField* ff, MoleculeStamp *molStamp, |
54 |
< |
int stampId, int globalIndex); |
54 |
> |
int stampId, int globalIndex, LocalIndexManager* localIndexMan); |
55 |
|
|
56 |
|
protected: |
57 |
|
|
58 |
|
/** Create an atom by its stamp */ |
59 |
< |
virtual Atom* createAtom(ForceField* ff, Molecule* mol, AtomStamp* stamp); |
59 |
> |
virtual Atom* createAtom(ForceField* ff, Molecule* mol, AtomStamp* stamp, |
60 |
> |
LocalIndexManager* localIndexMan); |
61 |
|
|
62 |
|
virtual RigidBody* createRigidBody(MoleculeStamp *molStamp, Molecule* mol, |
63 |
< |
RigidBodyStamp* stamp); |
63 |
> |
RigidBodyStamp* rbStamp, LocalIndexManager* localIndexMan); |
64 |
> |
|
65 |
|
virtual Bond* createBond(ForceField* ff, Molecule* mol, BondStamp* stamp); |
66 |
|
virtual Bend* createBend(ForceField* ff, Molecule* mol, BendStamp* stamp); |
67 |
|
virtual Torsion* createTorsion(ForceField* ff, Molecule* mol, TorsionStamp* stamp); |