7 #ifndef __FWATOMSPATCH_STRUCTURALPATCHDB_HPP__ 8 #define __FWATOMSPATCH_STRUCTURALPATCHDB_HPP__ 16 #include <fwCore/mt/types.hpp> 18 #include "fwAtomsPatch/config.hpp" 20 #include "fwAtomsPatch/IStructuralPatch.hpp" 25 class IStructuralPatch;
41 typedef std::map< PatchKeyType, SPTR(::fwAtomsPatch::IStructuralPatch) >
PatchesType;
61 const
std::
string& originVersion,
62 const
std::
string& targetClassname,
63 const
std::
string& targetVersion) const;
66 FWATOMSPATCH_API
size_t size() const;
93 mutable ::fwCore::mt::ReadWriteMutex m_mutex;
96 PatchesType m_patches;
99 FWATOMSPATCH_API static ::fwAtomsPatch::StructuralPatchDB::sptr s_default;
std::pair< VersionIDType, VersionIDType > PatchKeyType
Typedef used to store link to data structure.
Structural patch database. All structural patches are stored in this database.
This file defines fwCore base macros.
Contains base functionalities used to transform objects from a version to another.
~StructuralPatchDB()
Destructor.
std::pair< std::string, std::string > VersionIDType
Typedef used to store the pair classname/version of a data structure.
std::map< PatchKeyType, std::shared_ptr< ::fwAtomsPatch::IStructuralPatch > > PatchesType
Typedef used to store all the structural patches.
Base class of all structural patches.
StructuralPatchDB()
Constructor.