Changes in src/atom.hpp [e138de:46d958]
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
src/atom.hpp
re138de r46d958 32 32 33 33 class Vector; 34 class World; 34 35 35 36 /********************************************** declarations *******************************/ … … 39 40 */ 40 41 class atom : public TesselPoint, public TrajectoryParticle, public GraphNode, public BondedParticle, public virtual ParticleInfo, public virtual AtomInfo { 42 friend atom* NewAtom(); 43 friend void DeleteAtom(atom*); 41 44 public: 42 45 atom *previous; //!< previous atom in molecule list … … 45 48 int *sort; //!< sort criteria 46 49 47 atom(); 48 atom(class atom *pointer); 49 virtual ~atom(); 50 virtual atom *clone(); 50 51 51 52 bool OutputIndexed(ofstream * const out, const int ElementNo, const int AtomNo, const char *comment = NULL) const; … … 67 68 bool IsInParallelepiped(const Vector offset, const double *parallelepiped) const; 68 69 70 // getter and setter 71 72 /** 73 * returns the World that contains this atom. 74 * Use this if you need to get the world without locking 75 * the singleton for example. 76 * 77 */ 78 World *getWorld(); 79 void setWorld(World*); 80 81 virtual int getId(); 82 virtual void setId(int); 83 protected: 84 /** 85 * Protected constructor to ensure construction of atoms through the world. 86 * see World::createAtom() 87 */ 88 atom(); 89 90 /** 91 * Protected copy-constructor to ensure construction of atoms by cloning. 92 * see atom::clone() 93 */ 94 atom(class atom *pointer); 95 96 /** 97 * Protected destructor to ensure destruction of atoms through the world. 98 * see World::destroyAtom() 99 */ 100 virtual ~atom(); 69 101 private: 102 World* world; 103 int id; 70 104 }; 71 105 106 /** 107 * internal method used by the world. Do not use if you don't know what you are doing. 108 * You might get burned... 109 * Use World::createAtom() instead. 110 */ 111 atom* NewAtom(); 112 113 /** 114 * internal method used by the world. Do not use if you don't know what you are doing. 115 * You might get burned... 116 * Use World::destroyAtom() instead. 117 */ 118 void DeleteAtom(atom*); 119 120 72 121 #endif /* ATOM_HPP_ */
Note:
See TracChangeset
for help on using the changeset viewer.