12 #include <boost/unordered_map.hpp>
13 #include <boost/unordered_set.hpp>
15 #include <boost/archive/xml_iarchive.hpp>
16 #include <boost/archive/xml_oarchive.hpp>
17 #include <boost/serialization/access.hpp>
18 #include <boost/uuid/uuid_io.hpp>
19 #include <boost/uuid/uuid_serialize.hpp>
20 #include <boost/signals2.hpp>
21 #include <tbb/recursive_mutex.h>
23 #include <vlutil/vlUuid.h>
49 virtual void setResolveMarkingTextToUUIDMapping(
bool);
50 virtual bool resolveMarkingTextToUUIDMapping()
const;
52 virtual void setResolveUUIDToUUIDMapping(
bool);
54 virtual bool resolveUUIDToUUIDMapping()
const;
57 virtual void resolveUUIDMapping(
bool clearWhenDone =
false);
61 virtual bool addUUIDForUpgrade(
DtUUID*);
62 virtual void removeUUIDForUpgrade(
DtUUID*);
66 virtual void objectUUIDChanged(
const DtUUID& oldUUID,
const DtUUID& newUUID);
71 virtual void objectNameChanged(
const DtString& oldName,
const DtString& newName,
const DtUUID& newNameUUID);
78 virtual void removeUUIDToMarkingTextMapping(
const DtUUID&);
81 virtual void addUUIDToUUIDMapping(
const DtUUID& old,
const DtUUID& newUUID);
84 virtual void addEntityIdentifierToUUIDMapping(
const DtString& eid,
const DtUUID&);
85 virtual void removeEntityIdentifierMapping(
const DtString& eid);
86 virtual const DtUUID& entityIdentifierToUUIDMapping(
const DtString& eid)
const;
87 virtual const DtString& uuidToEntityIdentifierMapping(
const DtUUID& uuid)
const;
89 virtual bool hasUUID(
const DtUUID&)
const;
92 virtual void addMarkingTextToMarkingTextMapping(
const DtString& oldMarkingText,
const DtString& newMarkingText);
98 virtual bool hasMarkingText(
const DtString&)
const;
104 virtual void pushMappingContext();
108 virtual void popMappingContext(
bool merge =
false);
114 virtual DtString markingText(
const DtUUID&,
bool* found =
nullptr)
const;
123 virtual void markingTextUpdated(
const DtString& oldText,
const DtString& newText);
126 const UUIDsForUpgrade& uuidsForMarkingTextUpgrade(
int context = -1)
const;
149 virtual void resolveToMarkingTextMapping();
152 virtual boost::unordered_map<DtString, DtString> resolveToUUIDMapping(
bool clearWhenDone =
false);
159 virtual bool hasMarkingTextToUUIDMapForImport(
const DtString&)
const;
UUID is a unique ID wrapper class.
Definition: uuid.h:59
bool myResolveMarkingTextToUUIDMapping
Definition: objectIdentificationResolver.h:184
Definition: objectIdentificationResolver.h:164
boost::unordered_map< DtString, DtString > MarkingTextToMarkingTextMap
Definition: objectIdentificationResolver.h:37
boost::unordered_map< DtString, DtUUID > EntityIdentifierToUUIDMap
Definition: objectIdentificationResolver.h:33
bool myResolveUUIDToUUIDMapping
Definition: objectIdentificationResolver.h:185
MarkingTextToUUIDMap myMarkingTextToUUIDMap
Definition: objectIdentificationResolver.h:172
bool myDestructingFlag
Definition: objectIdentificationResolver.h:182
UUIDToEntityIdentifierMap myUUIDToEntityIdentifierMap
Definition: objectIdentificationResolver.h:168
boost::unordered_map< DtUUID, DtUUID > UUIDToUUIDMap
Definition: objectIdentificationResolver.h:36
Contains the DtUUID class declaration.
boost::unordered_map< DtUUID, DtUUIDMarkingTextProvider * > UUIDToMarkingTextMap
Definition: objectIdentificationResolver.h:32
std::vector< MappingContext > MappingContexts
Definition: objectIdentificationResolver.h:180
MarkingTextToMarkingTextMap myMarkingTextToMarkingTextMap
Definition: objectIdentificationResolver.h:170
UUIDToUUIDMap myUUIDToUUIDMap
Definition: objectIdentificationResolver.h:169
UUIDsForUpgrade myUUIDsForMarkingTextUpgrade
Definition: objectIdentificationResolver.h:174
bool myPoppingContext
Definition: objectIdentificationResolver.h:187
UUIDToMarkingTextMap myUUIDToMarkingTextMap
Definition: objectIdentificationResolver.h:166
boost::unordered_set< DtUUID * > UUIDsForUpgrade
Definition: objectIdentificationResolver.h:38
UUIDsForUpgrade myUUIDsForUUIDUpgrade
Definition: objectIdentificationResolver.h:175
bool myPushingContext
Definition: objectIdentificationResolver.h:186
EntityIdentifierToUUIDMap myEntityIdentifierToUUIDMap
Definition: objectIdentificationResolver.h:167
Definition: objectIdentificationResolver.h:29
#define DT_DLL_vrfutil
This file is used to determine how to build Disable inconsistent dll linkage warning Visual Studio 6...
Definition: vrfutilDefines.h:34
MarkingTextToUUIDMap myMarkingTextToUUIDMapForImport
Definition: objectIdentificationResolver.h:171
MappingContexts myMappingContexts
Definition: objectIdentificationResolver.h:181
boost::unordered_map< DtUUID, DtString > UUIDToEntityIdentifierMap
Definition: objectIdentificationResolver.h:34
boost::unordered_map< DtString, DtUUID > MarkingTextToUUIDMap
Definition: objectIdentificationResolver.h:35
To allow for faster marking text lookups, the DtUUIDMarkingTextProvider class wraps an object that wi...
Definition: uuid.h:30
boost::signals2::signal< void(const DtUUID &oldUUID, const DtUUID &newUUID)> signal_uuidUpgradedTo
Definition: objectIdentificationResolver.h:161
tbb::recursive_mutex myMutex
Definition: objectIdentificationResolver.h:178