fw4spl
BaseObject.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 __FWCORE_BASEOBJECT_HPP__
8 #define __FWCORE_BASEOBJECT_HPP__
9 
10 #include "fwCore/macros.hpp"
11 #include "fwCore/config.hpp"
12 
13 //keep it first to prevent nasty warns in MSVC
14 #include <boost/config.hpp>
15 
16 namespace fwCore
17 {
18 
22 class FWCORE_CLASS_API BaseObject : public std::enable_shared_from_this<BaseObject>
23 {
24 public:
26 
27 protected:
28  FWCORE_API virtual ~BaseObject();
29  using std::enable_shared_from_this<BaseObject>::shared_from_this;
30 };
31 
32 } // namespace fwCore
33 
34 #endif // __FWCORE_BASEOBJECT_HPP__
35 
Base class for all FW4SPL&#39;s classes.
Definition: BaseObject.hpp:22
STL namespace.
This file defines fwCore base macros.
This namespace fwCore provides common foundations for FW4SPL.
Definition: BaseObject.hpp:16
#define fwCoreBaseClassDefinitionsMacro(_classinfo_)
Generate common code for a base class (Interfaces, Abstract classes, ...)