Medical Imaging Interaction Toolkit  2016.11.0
Medical Imaging Interaction Toolkit
mitk::SceneReaderV1 Class Reference

#include <mitkSceneReaderV1.h>

Inheritance diagram for mitk::SceneReaderV1:
Collaboration diagram for mitk::SceneReaderV1:

Public Member Functions

 mitkClassMacro (SceneReaderV1, SceneReader)
 
Pointer Clone () const
 
virtual bool LoadScene (TiXmlDocument &document, const std::string &workingDirectory, DataStorage *storage) override
 
- Public Member Functions inherited from mitk::SceneReader
 mitkClassMacroItkParent (SceneReader, itk::Object)
 
Pointer Clone () const
 

Static Public Member Functions

static Pointer New ()
 
- Static Public Member Functions inherited from mitk::SceneReader
static Pointer New ()
 

Protected Types

typedef std::pair< DataNode::Pointer, std::list< std::string > > NodesAndParentsPair
 
typedef std::list< NodesAndParentsPairOrderedNodesList
 
typedef std::map< std::string, DataNode * > IDToNodeMappingType
 
typedef std::map< DataNode *, std::string > NodeToIDMappingType
 

Protected Member Functions

DataNode::Pointer LoadBaseDataFromDataTag (TiXmlElement *dataElement, const std::string &workingDirectory, bool &error)
 tries to create one DataNode from a given XML <node> element More...
 
bool DecorateNodeWithProperties (DataNode *node, TiXmlElement *nodeElement, const std::string &workingDirectory)
 reads all the properties from the XML document and recreates them in node More...
 
void ClearNodePropertyListWithExceptions (DataNode &node, PropertyList &propertyList)
 Clear a default property list and handle some exceptions. More...
 
bool DecorateBaseDataWithProperties (BaseData::Pointer data, TiXmlElement *baseDataNodeElem, const std::string &workingDir)
 reads all properties assigned to a base data element and assigns the list to the base data object More...
 

Protected Attributes

OrderedNodesList m_OrderedNodePairs
 
IDToNodeMappingType m_NodeForID
 
NodeToIDMappingType m_IDForNode
 
UIDGenerator m_UIDGen
 

Detailed Description

Definition at line 21 of file mitkSceneReaderV1.h.

Member Typedef Documentation

typedef std::map<std::string, DataNode *> mitk::SceneReaderV1::IDToNodeMappingType
protected

Definition at line 68 of file mitkSceneReaderV1.h.

typedef std::pair<DataNode::Pointer, std::list<std::string> > mitk::SceneReaderV1::NodesAndParentsPair
protected

Definition at line 66 of file mitkSceneReaderV1.h.

typedef std::map<DataNode *, std::string> mitk::SceneReaderV1::NodeToIDMappingType
protected

Definition at line 69 of file mitkSceneReaderV1.h.

Definition at line 67 of file mitkSceneReaderV1.h.

Member Function Documentation

void mitk::SceneReaderV1::ClearNodePropertyListWithExceptions ( DataNode node,
PropertyList propertyList 
)
protected

Clear a default property list and handle some exceptions.

Called after assigning a BaseData object to a fresh DataNode via SetData(). This call to SetData() would create default properties that have not been there when saving the scene. Since they can produce problems, we clear the list and use only those properties that we read from the scene file.

This method also handles some exceptions for backwards compatibility. Those exceptions are documented directly in the code of the method.

Definition at line 288 of file mitkSceneReaderV1.cpp.

References mitk::PropertyList::Clear(), mitk::PropertyList::ConcatenatePropertyList(), mitk::DataNode::GetData(), mitk::PropertyList::GetProperty(), and mitk::PropertyList::New().

Pointer mitk::SceneReaderV1::Clone ( ) const
bool mitk::SceneReaderV1::DecorateBaseDataWithProperties ( BaseData::Pointer  data,
TiXmlElement *  baseDataNodeElem,
const std::string &  workingDir 
)
protected

reads all properties assigned to a base data element and assigns the list to the base data object

The baseDataNodeElem is supposed to be the <properties file="..."> element.

Definition at line 385 of file mitkSceneReaderV1.cpp.

References MITK_ERROR, and mitk::PropertyListDeserializer::New().

Referenced by LoadScene().

bool mitk::SceneReaderV1::DecorateNodeWithProperties ( DataNode node,
TiXmlElement *  nodeElement,
const std::string &  workingDirectory 
)
protected

reads all the properties from the XML document and recreates them in node

Definition at line 341 of file mitkSceneReaderV1.cpp.

References mitk::DataNode::GetPropertyList(), MITK_ERROR, and mitk::PropertyListDeserializer::New().

Referenced by LoadScene().

mitk::DataNode::Pointer mitk::SceneReaderV1::LoadBaseDataFromDataTag ( TiXmlElement *  dataElement,
const std::string &  workingDirectory,
bool &  error 
)
protected

tries to create one DataNode from a given XML <node> element

Definition at line 244 of file mitkSceneReaderV1.cpp.

References filename, mitk::IOUtil::Load(), MITK_ERROR, MITK_WARN, and mitk::DataNode::New().

Referenced by LoadScene().

bool mitk::SceneReaderV1::LoadScene ( TiXmlDocument &  document,
const std::string &  workingDirectory,
DataStorage storage 
)
overridevirtual
mitk::SceneReaderV1::mitkClassMacro ( SceneReaderV1  ,
SceneReader   
)
static Pointer mitk::SceneReaderV1::New ( )
static

Member Data Documentation

NodeToIDMappingType mitk::SceneReaderV1::m_IDForNode
protected

Definition at line 73 of file mitkSceneReaderV1.h.

Referenced by LoadScene().

IDToNodeMappingType mitk::SceneReaderV1::m_NodeForID
protected

Definition at line 72 of file mitkSceneReaderV1.h.

Referenced by LoadScene().

OrderedNodesList mitk::SceneReaderV1::m_OrderedNodePairs
protected

Definition at line 71 of file mitkSceneReaderV1.h.

Referenced by LoadScene().

UIDGenerator mitk::SceneReaderV1::m_UIDGen
protected

Definition at line 75 of file mitkSceneReaderV1.h.


The documentation for this class was generated from the following files: