// Management methods Renderable * AtomRenderableManager::create(void * data) { Utopia::Node * atom = (Utopia::Node *) data; AtomRenderable * newRenderable = new AtomRenderable(atom, this); // qDebug() << "AtomRenderableManager::create" << newRenderable; renderables[atom] = newRenderable; invalidateBuffers(); return newRenderable; }
bool VolumeBufferManager::setMaxResolution(unsigned int dimX, unsigned int dimY, unsigned int dimZ) { m_DimX = dimX; m_DimY = dimY; m_DimZ = dimZ; m_DownLoadManager.allocateBuffer(dimX, dimY, dimZ); invalidateBuffers(); return true; }
void AtomRenderableManager::destroy(Renderable * renderable) { AtomRenderable * atomRenderable = (AtomRenderable *) renderable; if (atomRenderable) { if (atomRenderable->buffer) { invalidateBuffers(); atomRenderable->buffer->invalidate(); atomRenderable->buffer = 0; } renderables.erase(atomRenderable->getData()); delete atomRenderable; } }
bool VolumeBufferManager::setSourceManager(SourceManager* sourceManager) { if (sourceManager) { invalidateBuffers(); m_SourceManager = sourceManager; if (!setNumberOfVariables(m_SourceManager->getSource()->getNumVars())) { m_SourceManager = 0; return false; } else { return true; } } else { sourceManager = 0; m_NumVariables = 0; return true; } }
bool VolumeBufferManager::setRequestRegion(double minX, double minY, double minZ, double maxX, double maxY, double maxZ, unsigned int time) { if (m_MinX!=minX || m_MinY!=minY || m_MinZ!=minZ || m_MaxX!=maxX || m_MaxY!=maxY || m_MaxZ!=maxZ || m_Time!=time) { invalidateBuffers(); } m_MinX = minX; m_MinY = minY; m_MinZ = minZ; m_MaxX = maxX; m_MaxY = maxY; m_MaxZ = maxZ; m_Time = time; //invalidateBuffers(); return true; }