7 #ifndef __FWATOMSPATCH_STRUCTURALCREATORDB_HPP__ 8 #define __FWATOMSPATCH_STRUCTURALCREATORDB_HPP__ 14 #include <fwCore/base.hpp> 15 #include <fwCore/mt/types.hpp> 17 #include "fwAtomsPatch/config.hpp" 27 class IStructuralCreator;
41 typedef std::map< VersionIDType, SPTR(::fwAtomsPatch::IStructuralCreator) >
CreatorsType;
58 const
std::
string& version);
65 FWATOMSPATCH_API
SPTR(::
fwAtoms::Object) create(const
std::
string& classname, const
std::
string& version);
68 FWATOMSPATCH_API
size_t size() const;
94 mutable ::fwCore::mt::ReadWriteMutex m_mutex;
97 CreatorsType m_creators;
99 FWATOMSPATCH_API
static StructuralCreatorDB::sptr s_default;
StructuralCreatorDB()
Constructor.
fwAtoms contains basic objects to represent any other kind of object
Base class of all structural creators. Creates a new atom object with the default values correspondin...
Structural creator database. All structural creators are stored in this database. ...
Contains base functionalities used to transform objects from a version to another.
~StructuralCreatorDB()
Destructor.
std::map< VersionIDType, std::shared_ptr< ::fwAtomsPatch::IStructuralCreator > > CreatorsType
Typedef used to store all the structural creators.
std::pair< std::string, std::string > VersionIDType
Typedef used to store the pair classname/version of a data structure.