15 #include <vlutil/vlUuid.h>
18 #include <unordered_set>
22 #include <boost/archive/xml_iarchive.hpp>
23 #include <boost/archive/xml_oarchive.hpp>
24 #include <boost/serialization/access.hpp>
25 #include <boost/uuid/uuid_io.hpp>
26 #include <boost/uuid/uuid_serialize.hpp>
27 #include <boost/unordered_map.hpp>
28 #include <boost/signals2.hpp>
57 virtual void setResolveMarkingTextToUUIDMapping(
bool);
58 virtual bool resolveMarkingTextToUUIDMapping()
const;
60 virtual void setResolveUUIDToUUIDMapping(
bool);
62 virtual bool resolveUUIDToUUIDMapping()
const;
65 virtual void resolveUUIDMapping(
bool clearWhenDone =
false);
69 virtual bool addUUIDForUpgrade(
DtUUID*);
70 virtual void removeUUIDForUpgrade(
DtUUID*);
74 virtual void objectUUIDChanged(
const DtUUID& oldUUID,
const DtUUID& newUUID);
79 virtual void objectNameChanged(
const DtString& oldName,
const DtString& newName,
const DtUUID& newNameUUID);
86 virtual void removeUUIDToMarkingTextMapping(
const DtUUID&);
89 virtual void addUUIDToUUIDMapping(
const DtUUID& old,
const DtUUID& newUUID);
92 virtual void addEntityIdentifierToUUIDMapping(
const DtString& eid,
const DtUUID&);
93 virtual void removeEntityIdentifierMapping(
const DtString& eid);
94 virtual const DtUUID& entityIdentifierToUUIDMapping(
const DtString& eid)
const;
95 virtual const DtString& uuidToEntityIdentifierMapping(
const DtUUID& uuid)
const;
97 virtual bool hasUUID(
const DtUUID&)
const;
100 virtual void addMarkingTextToMarkingTextMapping(
const DtString& oldMarkingText,
const DtString& newMarkingText);
106 virtual bool hasMarkingText(
const DtString&)
const;
112 virtual void pushMappingContext();
116 virtual void popMappingContext(
bool merge =
false);
122 virtual DtString markingText(
const DtUUID&,
bool* found =
nullptr)
const;
131 virtual void markingTextUpdated(
const DtString& oldText,
const DtString& newText);
134 const UUIDsForUpgrade& uuidsForMarkingTextUpgrade(
int context = -1)
const;
157 virtual void resolveToMarkingTextMapping();
160 virtual boost::unordered_map<DtString, DtString> resolveToUUIDMapping(
bool clearWhenDone =
false);
167 virtual bool hasMarkingTextToUUIDMapForImport(
const DtString&)
const;
UUID is a unique ID wrapper class.
Definition: uuid.h:59
bool myResolveMarkingTextToUUIDMapping
Definition: objectIdentificationResolver.h:192
Definition: objectIdentificationResolver.h:172
boost::unordered_map< DtString, DtString > MarkingTextToMarkingTextMap
Definition: objectIdentificationResolver.h:45
boost::unordered_map< DtString, DtUUID > EntityIdentifierToUUIDMap
Definition: objectIdentificationResolver.h:41
bool myResolveUUIDToUUIDMapping
Definition: objectIdentificationResolver.h:193
MarkingTextToUUIDMap myMarkingTextToUUIDMap
Definition: objectIdentificationResolver.h:180
bool myDestructingFlag
Definition: objectIdentificationResolver.h:190
UUIDToEntityIdentifierMap myUUIDToEntityIdentifierMap
Definition: objectIdentificationResolver.h:176
boost::unordered_map< DtUUID, DtUUID > UUIDToUUIDMap
Definition: objectIdentificationResolver.h:44
Contains the DtUUID class declaration.
boost::unordered_map< DtUUID, DtUUIDMarkingTextProvider * > UUIDToMarkingTextMap
Definition: objectIdentificationResolver.h:40
std::vector< MappingContext > MappingContexts
Definition: objectIdentificationResolver.h:188
MarkingTextToMarkingTextMap myMarkingTextToMarkingTextMap
Definition: objectIdentificationResolver.h:178
UUIDToUUIDMap myUUIDToUUIDMap
Definition: objectIdentificationResolver.h:177
UUIDsForUpgrade myUUIDsForMarkingTextUpgrade
Definition: objectIdentificationResolver.h:182
bool myPoppingContext
Definition: objectIdentificationResolver.h:195
UUIDToMarkingTextMap myUUIDToMarkingTextMap
Definition: objectIdentificationResolver.h:174
UUIDsForUpgrade myUUIDsForUUIDUpgrade
Definition: objectIdentificationResolver.h:183
std::recursive_mutex myMutex
Definition: objectIdentificationResolver.h:186
bool myPushingContext
Definition: objectIdentificationResolver.h:194
EntityIdentifierToUUIDMap myEntityIdentifierToUUIDMap
Definition: objectIdentificationResolver.h:175
std::unordered_set< DtUUID * > UUIDsForUpgrade
Definition: objectIdentificationResolver.h:46
Definition: objectIdentificationResolver.h:37
#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:179
MappingContexts myMappingContexts
Definition: objectIdentificationResolver.h:189
boost::unordered_map< DtUUID, DtString > UUIDToEntityIdentifierMap
Definition: objectIdentificationResolver.h:42
boost::unordered_map< DtString, DtUUID > MarkingTextToUUIDMap
Definition: objectIdentificationResolver.h:43
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:169