--- branches/new_design/OOPSE-2.0/src/applications/simpleBuilder/MoLocator.hpp 2004/12/02 05:04:20 1826 +++ branches/new_design/OOPSE-2.0/src/applications/simpleBuilder/MoLocator.hpp 2005/01/06 00:16:07 1903 @@ -1,70 +1,35 @@ -#ifndef __MOLOCATOR_H__ +#ifndef __MOLOCATOR_HPP -#define __MOLOCATOR_H__ +#define __MOLOCATOR_HPP - - #include #include "primitives/Atom.hpp" - #include "primitives/DirectionalAtom.hpp" - #include "types/MoleculeStamp.hpp" - #include "primitives/Molecule.hpp" - +#include "math/SquareMatrix3.hpp" #include "math/Vector3.hpp" - -#include "UseTheForce/ForceFields.hpp" - - - - - +#include "UseTheForce/ForceField.hpp" +namespace oopse { //convert lattice vector to rotation matrix - -void latVec2RotMat(const Vector3d& lv, double rotMat[3][3]); - - - +double getAtomMass(const std::string& at, ForceField* myFF); +double getMolMass(MoleculeStamp *molStamp, ForceField *myFF); +RotMat3x3d latVec2RotMat(const Vector3d& lv); class MoLocator{ + public: + MoLocator( MoleculeStamp* theStamp, ForceField* theFF); + void placeMol( const Vector3d& offset, const Vector3d& ort, Molecule* mol); + private: + void calcRef( void ); + MoleculeStamp* myStamp; - + ForceField* myFF; + std::vector refCoords; + int nIntegrableObjects; -public: - - - - MoLocator( MoleculeStamp* theStamp, ForceFields* theFF); - - - - void placeMol( const Vector3d& offset, const Vector3d& ort, Molecule* mol); - - - -private: - - - - void calcRefCoords( void ); - - - - MoleculeStamp* myStamp; - - ForceFields* myFF; - - - - std::vector refCoords; - - int nIntegrableObjects; - }; - - +} #endif