- File:
-
- 1 edited
-
src/Descriptors/AtomIdDescriptor.cpp (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
src/Descriptors/AtomIdDescriptor.cpp
r7a1ce5 r24a5e0 14 14 15 15 16 AtomIdDescriptor_impl::AtomIdDescriptor_impl( int _id) :16 AtomIdDescriptor_impl::AtomIdDescriptor_impl(atomId_t _id) : 17 17 id(_id) 18 18 {} … … 21 21 {} 22 22 23 bool AtomIdDescriptor_impl::predicate(std::pair< int,atom*> atom) {24 return atom. second->getId()==id;23 bool AtomIdDescriptor_impl::predicate(std::pair<atomId_t,atom*> atom) { 24 return atom.first==id; 25 25 } 26 26 27 AtomDescriptor AtomById( int id){27 AtomDescriptor AtomById(atomId_t id){ 28 28 return AtomDescriptor(AtomDescriptor::impl_ptr(new AtomIdDescriptor_impl(id))); 29 29 } 30 30 31 #if 0 32 33 // so far the lookuptable for Atoms-by-id does not work, since atoms don't get an ID upon creation. 34 // instead of this we rely on walking through all atoms. 35 36 atom *AtomIdDescriptor::find(){ 37 map<int,atom*> atoms = getAtoms(); 38 map<int,atom*>::iterator res = atoms.find(id); 31 atom *AtomIdDescriptor_impl::find(){ 32 World::AtomSet atoms = getAtoms(); 33 World::AtomSet::iterator res = atoms.find(id); 39 34 return (res!=atoms.end())?((*res).second):0; 40 35 } 41 36 42 vector<atom*> AtomIdDescriptor ::findAll(){37 vector<atom*> AtomIdDescriptor_impl::findAll(){ 43 38 atom *res = find(); 44 39 return (res)?(vector<atom*>(1,res)):(vector<atom*>()); 45 40 } 46 47 #endif
Note:
See TracChangeset
for help on using the changeset viewer.
