7 #ifndef __FWTOOLS_UUID_HPP__ 8 #define __FWTOOLS_UUID_HPP__ 10 #include "fwTools/config.hpp" 11 #include "fwTools/Object.hpp" 13 #include <fwCore/base.hpp> 14 #include <fwCore/mt/types.hpp> 24 class FWTOOLS_CLASS_API
UUID 30 typedef std::string UUIDType;
36 FWTOOLS_API
static bool exist(
const UUIDType& uuid);
42 FWTOOLS_API
static const UUIDType&
get(::fwTools::Object::sptr object);
48 FWTOOLS_API static ::fwTools::Object::sptr
get(
const UUIDType& uuid );
54 FWTOOLS_API
static UUIDType generateUUID();
61 FWTOOLS_API
static bool set(::fwTools::Object::sptr object,
const UUID::UUIDType& uuid);
66 FWTOOLS_API
virtual ~
UUID();
73 FWTOOLS_API
static UUIDContainer s_uuidMap;
89 static ::fwCore::mt::ReadWriteMutex s_uuidMapMutex;
92 static ::fwCore::mt::Mutex s_generateUUIDMutex;
::boost::shared_mutex ReadWriteMutex
Defines a single writer, multiple readers mutex.
#define fwCoreClassFactoryMacro(_classinfo_, _parameters_, _factory_)
Generate methods for classes with one factory.