ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE/libmdtools/OtherVisitor.cpp
(Generate patch)

Comparing trunk/OOPSE/libmdtools/OtherVisitor.cpp (file contents):
Revision 1119 by tim, Mon Apr 19 17:44:48 2004 UTC vs.
Revision 1120 by tim, Mon Apr 19 20:54:58 2004 UTC

# Line 296 | Line 296 | void PrepareVisitor::internalVisit(StuntDouble * sd){
296  
297   //----------------------------------------------------------------------------//
298  
299 < void PrepareVisitor::internalVisit(StuntDouble * sd){
299 > void PrepareVisitor::internalVisit(Atom * atom){
300    GenericData* data;
301    AtomData* atomData;
302  
303    //if visited property is  existed, remove it
304 <  data = sd->getProperty("VISITED");
304 >  data = atom->getProperty("VISITED");
305    if(data != NULL){
306 <    sd->removeProperty("VISITED");  
306 >    atom->removeProperty("VISITED");  
307    }
308  
309    //remove atomdata
310 <  data = sd->getProperty("ATOMDATA");
310 >  data = atom->getProperty("ATOMDATA");
311    if(data != NULL){
312      atomData = dynamic_cast<AtomData*>(data);  
313      if(atomData != NULL)
314 <      sd->removeProperty("ATOMDATA");
314 >      atom->removeProperty("ATOMDATA");
315    }
316    
317   }
318  
319 + void PrepareVisitor::internalVisit(RigidBody * rb){
320 +  GenericData* data;
321 +  AtomData* atomData;
322 +  vector<Atom*> myAtoms;
323 +  vector<Atom*>::iterator atomIter;
324 +  
325 +  //if visited property is  existed, remove it
326 +  data = rb->getProperty("VISITED");
327 +  if(data != NULL){
328 +    rb->removeProperty("VISITED");  
329 +  }
330 +
331 +  //remove atomdata
332 +  data = rb->getProperty("ATOMDATA");
333 +  if(data != NULL){
334 +    atomData = dynamic_cast<AtomData*>(data);  
335 +    if(atomData != NULL)
336 +      rb->removeProperty("ATOMDATA");
337 +  }
338 +
339 +  myAtoms = rb->getAtoms();
340 +    
341 +  for(atomIter = myAtoms.begin(); atomIter != myAtoms.end(); ++atomIter)
342 +   internalVisit (*atomIter);  
343 + }

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines