void InfiGLDestroyContextObjects( SDL_GLContext ctx ) { ObjMap::iterator vai = vertexarrays.find( ctx ); if ( vai != vertexarrays.end() ) { ObjSet* va = vai->second; uint32* bufferva = new uint32[va->size()]; ObjSet::iterator vaiter = va->begin(); for ( uint32 i=0;vaiter!=va->end();++vaiter,++i ) bufferva[i] = *vaiter; InfiGLDeleteVertexArrays( va->size(), bufferva ); delete[] bufferva; delete va; } ObjMap::iterator fbi = framebuffers.find( ctx ); if ( fbi != framebuffers.end() ) { ObjSet* fb = fbi->second; uint32* bufferfb = new uint32[fb->size()]; ObjSet::iterator fbiter = fb->begin(); for ( uint32 i=0;fbiter!=fb->end();++fbiter,++i ) bufferfb[i] = *fbiter; InfiGLDeleteFramebuffers( fb->size(), bufferfb ); delete[] bufferfb; delete fb; } }
PyObject *PyAtom::Retrieve(size_t id) { ObjMap::iterator it = objmap.find(id); PyObject *ret = it == objmap.end()?NULL:it->second; Collect(); return ret; }
static ObjSet* get_framebuffer() { SDL_GLContext ctx = InfiCurrentContext(); ObjMap::iterator f = framebuffers.find( ctx ); if ( f == framebuffers.end() ) { ObjSet* narr = new ObjSet; framebuffers.insert( f, std::make_pair( ctx, narr ) ); return narr; } else { return f->second; } }
GeoObject * find_obj( std::string & objname, bool do_throw=true ) { //DBG << "( find_obj() " << objname << " )\n"; ObjMap::iterator p = _objmap.find(objname); if (p==_objmap.end()) { //DBG << " -- (not found)\n"; if (do_throw) throw("couldn't look up "+objname); else return 0; } //DBG << "( find_obj() " << objname << "==" << (p->second) << " )\n"; return p->second; }
double getObjCoef(IloNumVar x) const { ObjMap::const_iterator const it = objMap.find(x); return (it == objMap.end()) ? 0.0 : it->second; }