fw4spl
fwData/include/fwData/String.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 __FWDATA_STRING_HPP__
8 #define __FWDATA_STRING_HPP__
9 
10 #include "fwData/factory/new.hpp"
11 #include "fwData/GenericField.hpp"
12 #include "fwData/Object.hpp"
13 
14 fwCampAutoDeclareDataMacro((fwData)(String), FWDATA_API);
15 
16 namespace fwData
17 {
18 
24 class FWDATA_CLASS_API String : public GenericField< std::string >
25 {
26 public:
27  fwCoreClassDefinitionsWithFactoryMacro( (String)(::fwData::Object), ( ((const std::string)("")) ),
28  GenericFieldFactory< String >);
29  fwCampMakeFriendDataMacro((fwData)(String));
30 
35  FWDATA_API String(::fwData::Object::Key key) noexcept;
36 
40  FWDATA_API virtual ~String() noexcept;
41 
43  FWDATA_API void shallowCopy( const Object::csptr& _source ) override;
44 
46  FWDATA_API void cachedDeepCopy(const Object::csptr& _source, DeepCopyCacheType& cache) override;
47 
48 };
49 
50 } // namespace fwData
51 
52 #endif /* __FWDATA_STRING_HPP__ */
53 
Key class used to restrict access to Object construction. See http://www.drdobbs.com/184402053.
#define fwCoreClassDefinitionsWithFactoryMacro(_classinfo_, _parameters_, _factory_)
Generate common construction methods for classes with one factory.
Base class for each data object.
Contains the representation of the data objects used in the framework.
This class contains an std::string value.