VR-Forces 4.10 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
objectNameDeconflictionTable.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2000 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 /*******************************************************************************
6 ** $RCSfile: objectNameDeconflictionTable.h,v $ $Revision: 1.3 $ $State: Exp $
7 *******************************************************************************/
8 #ifndef DtObjectNameDeconflictionTable_H_
9 #define DtObjectNameDeconflictionTable_H_
10 
13 
14 #include "vrfutil/vrfutilDefines.h"
15 
17 #include <deque>
18 #include <map>
19 
21 #include <vlutil/vlString.h>
22 
25 
33 {
34 public:
35 
42  typedef std::map<DtString, DtString > NameXrefIndex;
43  typedef NameXrefIndex::iterator NameXrefIndexIterator;
44  typedef NameXrefIndex::const_iterator const_NameXrefIndexIterator;
45 
51  typedef std::map<DtString,DtObjectNameDeconflictionEntry*> AliasMap;
52  typedef AliasMap::iterator AliasMapIterator;
53  typedef AliasMap::const_iterator const_AliasMapIterator;
54 
60  typedef std::map<DtString, DtSubordinateOrderEntry*> SubordinateOrderMap;
61  typedef SubordinateOrderMap::iterator SubordinateMapIterator;
62  typedef SubordinateOrderMap::const_iterator const_SubordinateMapIterator;
63 
64 public:
65 
68 
71 
74  const DtObjectNameDeconflictionTable& orig);
75 
78  const DtObjectNameDeconflictionTable& orig);
79 
80 
81 public:
82 
87  virtual const DtString& addAndDeconflict(
88  const DtString& sScenarioName,
89  const DtString& sOriginalObjectName,
90  const DtString& sParentName,
91  unsigned nOriginalDesignator);
92 
93  virtual void clear();
94 
95  virtual DtObjectNameDeconflictionEntry* find(
96  const DtString& sScenarioName,
97  const DtString& sOriginalObjectName);
98 
99  virtual const DtObjectNameDeconflictionEntry* find(
100  const DtString& sScenarioName,
101  const DtString& sOriginalObjectName) const;
102 
103  virtual DtObjectNameDeconflictionEntry* find(
104  const DtString& objectNameAlias);
105 
106  virtual const DtObjectNameDeconflictionEntry* find(
107  const DtString& objectNameAlias) const;
108 
109  virtual DtSubordinateOrderEntry* findSubordinateEntry(
110  const DtString& parentName);
111 
112  virtual const DtSubordinateOrderEntry* findSubordinateEntry(
113  const DtString& parentName) const;
114 
115  virtual unsigned originalDesignator(
116  const DtString& sScenarioName,
117  const DtString& sOriginalObjectName) const;
118 
123  virtual void remove(
124  const DtString& sScenarioName,
125  const DtString& sOriginalObjectName);
126 
129  virtual void remove(const DtString& sScenarioName);
130 
131  virtual const DtString& safeName(const DtString& sScenarioName,
132  const DtString& sOriginalObjectName) const;
133 
136  const DtString& sScenarioName) const;
137 
138 protected:
139 
140  virtual DtString deconflictName(const DtString& sObjectName) const;
141 
142  virtual DtString generateRandomSequence(unsigned nLimit) const;
143 
144 protected:
145 
146 
147 protected:
148 
152 
153 };
154 
155 #endif
156 
std::map< DtString, DtString > NameXrefIndex
NameXrefIndex Keep track of all original object names, and their aliases.
Definition: objectNameDeconflictionTable.h:42
AliasMap::iterator AliasMapIterator
Definition: objectNameDeconflictionTable.h:52
AliasMap::const_iterator const_AliasMapIterator
Definition: objectNameDeconflictionTable.h:53
VR-Link.
Definition: objectNameDeconflictionEntry.h:26
NameXrefIndex::iterator NameXrefIndexIterator
Definition: objectNameDeconflictionTable.h:43
SubordinateOrderMap mySubordinateMap
Definition: objectNameDeconflictionTable.h:151
NameXrefIndex myNameXrefIndex
Definition: objectNameDeconflictionTable.h:149
class DtObjectNameDeconflictionTable
Definition: objectNameDeconflictionTable.h:32
stl std::list
Definition: subordinateOrderEntry.h:29
NameXrefIndex::const_iterator const_NameXrefIndexIterator
Definition: objectNameDeconflictionTable.h:44
SubordinateOrderMap::const_iterator const_SubordinateMapIterator
Definition: objectNameDeconflictionTable.h:62
SubordinateOrderMap::iterator SubordinateMapIterator
Definition: objectNameDeconflictionTable.h:61
#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
AliasMap myAliasMap
Definition: objectNameDeconflictionTable.h:150
std::map< DtString, DtSubordinateOrderEntry * > SubordinateOrderMap
SubordinateOrderMap Lookup table for sorting subordinates into proper order.
Definition: objectNameDeconflictionTable.h:60
std::map< DtString, DtObjectNameDeconflictionEntry * > AliasMap
AliasMap Lookup table for deconfliction entries, keyed by the reconciled alias (safe object name)...
Definition: objectNameDeconflictionTable.h:51

Document ID: Generated on Tue Sep 21 17:42:52 EDT 2021 from SVN revision 234861
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)