Templated class for management of LocalStorage implementations in Mappers. More...
#include <mitkMapper.h>


Public Member Functions | |
| virtual void | ClearLocalStorage (mitk::BaseRenderer *renderer, bool unregisterFromBaseRenderer=true) |
| deallocates a local storage for a specifc BaseRenderer (if the BaseRenderer is itself deallocating it in its destructor, it has to set unregisterFromBaseRenderer=false) | |
| L * | GetLocalStorage (mitk::BaseRenderer *forRenderer) |
| Retrieves a LocalStorage for a specific BaseRenderer. | |
| ~LocalStorageHandler () | |
Protected Attributes | |
| std::map< mitk::BaseRenderer *, L * > | m_BaseRenderer2LS |
Templated class for management of LocalStorage implementations in Mappers.
The LocalStorageHandler is responsible for providing a LocalStorage to a concrete mitk::Mapper subclass. Each RenderWindow / mitk::BaseRenderer is assigned its own LocalStorage instance so that all contained ressources (actors, shaders, textures, ...) are provided individually per window.
Definition at line 226 of file mitkMapper.h.
| mitk::Mapper::LocalStorageHandler< L >::~LocalStorageHandler | ( | ) | [inline] |
Definition at line 265 of file mitkMapper.h.
{
typename std::map<mitk::BaseRenderer *,L*>::iterator it;
for ( it=m_BaseRenderer2LS.begin() ; it != m_BaseRenderer2LS.end(); it++ )
{
(*it).first->UnregisterLocalStorageHandler(this);
delete (*it).second;
}
m_BaseRenderer2LS.clear();
}
| virtual void mitk::Mapper::LocalStorageHandler< L >::ClearLocalStorage | ( | mitk::BaseRenderer * | renderer, |
| bool | unregisterFromBaseRenderer = true |
||
| ) | [inline, virtual] |
deallocates a local storage for a specifc BaseRenderer (if the BaseRenderer is itself deallocating it in its destructor, it has to set unregisterFromBaseRenderer=false)
Implements mitk::BaseLocalStorageHandler.
Definition at line 238 of file mitkMapper.h.
{
//MITK_INFO << "deleting a localstorage on a mapper request";
if(unregisterFromBaseRenderer)
renderer->UnregisterLocalStorageHandler( this );
L *l = m_BaseRenderer2LS[renderer];
m_BaseRenderer2LS.erase( renderer );
delete l;
}
| L* mitk::Mapper::LocalStorageHandler< L >::GetLocalStorage | ( | mitk::BaseRenderer * | forRenderer ) | [inline] |
Retrieves a LocalStorage for a specific BaseRenderer.
Should be used by mappers in GenerateData() and ApplyProperties()
Definition at line 252 of file mitkMapper.h.
{
L *l = m_BaseRenderer2LS[ forRenderer ];
if(!l)
{
//MITK_INFO << "creating new localstorage";
l = new L;
m_BaseRenderer2LS[ forRenderer ] = l;
forRenderer->RegisterLocalStorageHandler( this );
}
return l;
}
std::map<mitk::BaseRenderer *,L*> mitk::Mapper::LocalStorageHandler< L >::m_BaseRenderer2LS [protected] |
Definition at line 230 of file mitkMapper.h.
1.7.2