21 #include <Poco/Zip/ZipLocalFileHeader.h>
32 class IPropertyTransience;
60 itkFactorylessNewMacro(Self);
98 virtual DataStorage::Pointer
LoadScene(
const std::string &filename,
100 bool clearStorageFirst =
false);
122 bool clearStorageFirst =
false);
145 virtual bool SaveScene(DataStorage::SetOfObjects::ConstPointer sceneNodes,
147 const std::string &filename);
183 tinyxml2::XMLElement *
SaveBaseData(tinyxml2::XMLDocument &doc,
BaseData *data,
const std::string &filenamehint,
bool &error);
186 void OnUnzipError(
const void *pSender, std::pair<const Poco::Zip::ZipLocalFileHeader, const std::string> &info);
187 void OnUnzipOk(
const void *pSender, std::pair<const Poco::Zip::ZipLocalFileHeader, const Poco::Path> &info);
#define MITKSCENESERIALIZATION_EXPORT
Base class of all data objects.
Abstract data management class that organizes DataNode objects in a directed acyclic graph.
itk::VectorContainer< unsigned int, DataNode::Pointer > SetOfObjects
Container type used as a result set of query operations such as GetSubset().
Interface of the property transience service.
Key-value list holding instances of BaseProperty.
Provides functionality to load and save MITK scene files (.mitk).
std::string m_WorkingDirectory
unsigned int m_UnzipErrors
PropertyList::Pointer m_FailedProperties
void OnUnzipError(const void *pSender, std::pair< const Poco::Zip::ZipLocalFileHeader, const std::string > &info)
virtual DataStorage::Pointer LoadSceneUnzipped(const std::string &indexfilename, DataStorage *storage=nullptr, bool clearStorageFirst=false)
Loads a scene from an already-unpacked directory.
virtual bool SaveScene(DataStorage::SetOfObjects::ConstPointer sceneNodes, const DataStorage *storage, const std::string &filename)
Saves a scene of DataNodes to a .mitk scene file (ZIP archive).
void OnUnzipOk(const void *pSender, std::pair< const Poco::Zip::ZipLocalFileHeader, const Poco::Path > &info)
const FailedBaseDataListType * GetFailedNodes()
Returns DataNodes whose BaseData failed to be written during the most recent SaveScene() call.
std::string CreateEmptyTempDirectory()
const PropertyList * GetFailedProperties()
Returns properties that failed to be written during the most recent SaveScene() call.
mitkClassMacroItkParent(SceneIO, itk::Object)
tinyxml2::XMLElement * SavePropertyList(tinyxml2::XMLDocument &doc, const IPropertyTransience *transience, PropertyList *propertyList, const BaseData *nodeData, const std::string &filenamehint)
DataStorage::SetOfObjects FailedBaseDataListType
Type for a list of DataNodes whose BaseData failed to serialize/deserialize.
FailedBaseDataListType::Pointer m_FailedNodes
virtual DataStorage::Pointer LoadScene(const std::string &filename, DataStorage *storage=nullptr, bool clearStorageFirst=false)
Loads a scene from an MITK scene file.
tinyxml2::XMLElement * SaveBaseData(tinyxml2::XMLDocument &doc, BaseData *data, const std::string &filenamehint, bool &error)
Find image slices visible on a given plane.