fw4spl
MedicalWorkspacePatcher.hpp
1 /* ***** BEGIN LICENSE BLOCK *****
2  * FW4SPL - Copyright (C) IRCAD, 2009-2017.
3  * Distributed under the terms of the GNU Lesser General Public License (LGPL) as
4  * published by the Free Software Foundation.
5  * ****** END LICENSE BLOCK ****** */
6 
7 #ifndef __FWMDSEMANTICPATCH_V1_V2_MEDICALWORKSPACEPATCHER_HPP__
8 #define __FWMDSEMANTICPATCH_V1_V2_MEDICALWORKSPACEPATCHER_HPP__
9 
10 #include "fwAtomsPatch/patcher/DefaultPatcher.hpp"
11 
12 #include "fwMDSemanticPatch/config.hpp"
13 
14 #include <fwAtoms/Blob.hpp>
15 #include <fwAtoms/Boolean.hpp>
16 #include <fwAtoms/Map.hpp>
17 #include <fwAtoms/Numeric.hpp>
18 #include <fwAtoms/Object.hpp>
19 #include <fwAtoms/Sequence.hpp>
20 #include <fwAtoms/String.hpp>
21 
22 #include <fwCore/base.hpp>
23 
24 #include <string>
25 
26 namespace fwMDSemanticPatch
27 {
28 
29 namespace V1
30 {
31 namespace V2
32 {
33 
40 class FWMDSEMANTICPATCH_CLASS_API MedicalWorkspacePatcher : public ::fwAtomsPatch::patcher::DefaultPatcher
41 {
42 
43 public:
44 
47  ::fwAtomsPatch::patcher::factory::New< MedicalWorkspacePatcher >);
48 
51 
53  FWMDSEMANTICPATCH_API virtual ~MedicalWorkspacePatcher();
54 
61  FWMDSEMANTICPATCH_API virtual ::fwAtoms::Object::sptr transformObject(::fwAtoms::Object::sptr object,
62  const std::string& context,
63  const std::string& currentVersion,
64  const std::string& targetVersion) override;
65 
66 protected:
67 
69  FWMDSEMANTICPATCH_API void addCompositeTypes(::fwAtoms::Object::sptr object);
70 
71 };
72 
73 } // namespace V2
74 } // namespace V1
75 } // namespace fwMDSemanticPatch
76 
77 #endif /* __FWMDSEMANTICPATCH_V1_V2_MEDICALWORKSPACEPATCHER_HPP__ */
78 
Contains the semantic patches within the context "MedicalData".
#define fwCoreClassDefinitionsWithFactoryMacro(_classinfo_, _parameters_, _factory_)
Generate common construction methods for classes with one factory.
Key class used to restrict access to Object construction. See http://www.drdobbs.com/184402053.
This patcher adds required meta infos on composites describing a &#39;Medical workspace&#39;.