- File:
-
- 1 edited
-
src/Descriptors/AtomIdDescriptor.cpp (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
src/Descriptors/AtomIdDescriptor.cpp
r24a5e0 r7a1ce5 14 14 15 15 16 AtomIdDescriptor_impl::AtomIdDescriptor_impl( atomId_t _id) :16 AtomIdDescriptor_impl::AtomIdDescriptor_impl(int _id) : 17 17 id(_id) 18 18 {} … … 21 21 {} 22 22 23 bool AtomIdDescriptor_impl::predicate(std::pair< atomId_t,atom*> atom) {24 return atom. first==id;23 bool AtomIdDescriptor_impl::predicate(std::pair<int,atom*> atom) { 24 return atom.second->getId()==id; 25 25 } 26 26 27 AtomDescriptor AtomById( atomId_t id){27 AtomDescriptor AtomById(int id){ 28 28 return AtomDescriptor(AtomDescriptor::impl_ptr(new AtomIdDescriptor_impl(id))); 29 29 } 30 30 31 atom *AtomIdDescriptor_impl::find(){ 32 World::AtomSet atoms = getAtoms(); 33 World::AtomSet::iterator res = atoms.find(id); 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); 34 39 return (res!=atoms.end())?((*res).second):0; 35 40 } 36 41 37 vector<atom*> AtomIdDescriptor _impl::findAll(){42 vector<atom*> AtomIdDescriptor::findAll(){ 38 43 atom *res = find(); 39 44 return (res)?(vector<atom*>(1,res)):(vector<atom*>()); 40 45 } 46 47 #endif
Note:
See TracChangeset
for help on using the changeset viewer.
