Changes in src/molecule.cpp [2ba827:46d958]
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
src/molecule.cpp
r2ba827 r46d958 8 8 #include <boost/bind.hpp> 9 9 10 #include "World.hpp" 10 11 #include "atom.hpp" 11 12 #include "bond.hpp" … … 30 31 * Initialises molecule list with correctly referenced start and end, and sets molecule::last_atom to zero. 31 32 */ 32 molecule::molecule(const periodentafel * const teil) : elemente(teil), start( new atom), end(new atom),33 molecule::molecule(const periodentafel * const teil) : elemente(teil), start(World::get()->createAtom()), end(World::get()->createAtom()), 33 34 first(new bond(start, end, 1, -1)), last(new bond(start, end, 1, -1)), MDSteps(0), AtomCount(0), 34 35 BondCount(0), ElementCount(0), NoNonHydrogen(0), NoNonBonds(0), NoCyclicBonds(0), BondDistance(0.), … … 60 61 delete(first); 61 62 delete(last); 62 delete(end);63 delete(start);63 end->getWorld()->destroyAtom(end); 64 start->getWorld()->destroyAtom(start); 64 65 }; 65 66 … … 135 136 OBSERVE; 136 137 if (pointer != NULL) { 137 atom *walker = new atom(pointer);138 atom *walker = pointer->clone(); 138 139 walker->Name = Malloc<char>(strlen(pointer->Name) + 1, "atom::atom: *Name"); 139 140 strcpy (walker->Name, pointer->Name); … … 242 243 switch(TopBond->BondDegree) { 243 244 case 1: 244 FirstOtherAtom = new atom(); // new atom245 FirstOtherAtom = World::get()->createAtom(); // new atom 245 246 FirstOtherAtom->type = elemente->FindElement(1); // element is Hydrogen 246 247 FirstOtherAtom->v.CopyVector(&TopReplacement->v); // copy velocity … … 299 300 300 301 // create the two Hydrogens ... 301 FirstOtherAtom = new atom();302 SecondOtherAtom = new atom();302 FirstOtherAtom = World::get()->createAtom(); 303 SecondOtherAtom = World::get()->createAtom(); 303 304 FirstOtherAtom->type = elemente->FindElement(1); 304 305 SecondOtherAtom->type = elemente->FindElement(1); … … 354 355 case 3: 355 356 // take the "usual" tetraoidal angle and add the three Hydrogen in direction of the bond (height of the tetraoid) 356 FirstOtherAtom = new atom();357 SecondOtherAtom = new atom();358 ThirdOtherAtom = new atom();357 FirstOtherAtom = World::get()->createAtom(); 358 SecondOtherAtom = World::get()->createAtom(); 359 ThirdOtherAtom = World::get()->createAtom(); 359 360 FirstOtherAtom->type = elemente->FindElement(1); 360 361 SecondOtherAtom->type = elemente->FindElement(1); … … 475 476 MDSteps++; 476 477 for(i=0;i<NumberOfAtoms;i++){ 477 Walker = new atom;478 Walker = World::get()->createAtom(); 478 479 getline(xyzfile,line,'\n'); 479 480 istringstream *item = new istringstream(line);
Note:
See TracChangeset
for help on using the changeset viewer.