VR-Forces 4.10 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Types | Public Member Functions | Protected Member Functions | Protected Attributes
DtObjectNameDeconflictionTable Class Reference

class DtObjectNameDeconflictionTable More...

Public Types

typedef std::map< DtString,
DtString
NameXrefIndex
 NameXrefIndex Keep track of all original object names, and their aliases. More...
 
typedef NameXrefIndex::iterator NameXrefIndexIterator
 
typedef
NameXrefIndex::const_iterator 
const_NameXrefIndexIterator
 
typedef std::map< DtString,
DtObjectNameDeconflictionEntry * > 
AliasMap
 AliasMap Lookup table for deconfliction entries, keyed by the reconciled alias (safe object name). More...
 
typedef AliasMap::iterator AliasMapIterator
 
typedef AliasMap::const_iterator const_AliasMapIterator
 
typedef std::map< DtString,
DtSubordinateOrderEntry * > 
SubordinateOrderMap
 SubordinateOrderMap Lookup table for sorting subordinates into proper order. More...
 
typedef
SubordinateOrderMap::iterator 
SubordinateMapIterator
 
typedef
SubordinateOrderMap::const_iterator 
const_SubordinateMapIterator
 

Public Member Functions

 DtObjectNameDeconflictionTable ()
 default constructor More...
 
virtual ~DtObjectNameDeconflictionTable ()
 destructor More...
 
 DtObjectNameDeconflictionTable (const DtObjectNameDeconflictionTable &orig)
 copy constructor More...
 
DtObjectNameDeconflictionTableoperator= (const DtObjectNameDeconflictionTable &orig)
 assignment operator More...
 
virtual const DtStringaddAndDeconflict (const DtString &sScenarioName, const DtString &sOriginalObjectName, const DtString &sParentName, unsigned nOriginalDesignator)
 Does not repeat a deconfliction. More...
 
virtual void clear ()
 
virtual
DtObjectNameDeconflictionEntry
find (const DtString &sScenarioName, const DtString &sOriginalObjectName)
 
virtual const
DtObjectNameDeconflictionEntry
find (const DtString &sScenarioName, const DtString &sOriginalObjectName) const
 
virtual
DtObjectNameDeconflictionEntry
find (const DtString &objectNameAlias)
 
virtual const
DtObjectNameDeconflictionEntry
find (const DtString &objectNameAlias) const
 
virtual DtSubordinateOrderEntryfindSubordinateEntry (const DtString &parentName)
 
virtual const
DtSubordinateOrderEntry
findSubordinateEntry (const DtString &parentName) const
 
virtual unsigned originalDesignator (const DtString &sScenarioName, const DtString &sOriginalObjectName) const
 
virtual void remove (const DtString &sScenarioName, const DtString &sOriginalObjectName)
 remove() removes cross reference and alias associated with the given scenario name / object name combination. More...
 
virtual void remove (const DtString &sScenarioName)
 remove() Removes all entries associated with sScenarioName; More...
 
virtual const DtStringsafeName (const DtString &sScenarioName, const DtString &sOriginalObjectName) const
 
virtual std::pair
< DtObjectNameDeconflictionTable::const_NameXrefIndexIterator,
DtObjectNameDeconflictionTable::const_NameXrefIndexIterator
searchXrefRange (const DtString &sScenarioName) const
 

Protected Member Functions

virtual DtString deconflictName (const DtString &sObjectName) const
 
virtual DtString generateRandomSequence (unsigned nLimit) const
 

Protected Attributes

NameXrefIndex myNameXrefIndex
 
AliasMap myAliasMap
 
SubordinateOrderMap mySubordinateMap
 

Detailed Description

class DtObjectNameDeconflictionTable

Instances of DtObjectNameDeconflictionTable are used during scenario merge to reconcile duplicate VRF object names.

Member Typedef Documentation

NameXrefIndex Keep track of all original object names, and their aliases.

key: [scenarioName as path] value: [aliasName]

typedef NameXrefIndex::const_iterator DtObjectNameDeconflictionTable::const_NameXrefIndexIterator

AliasMap Lookup table for deconfliction entries, keyed by the reconciled alias (safe object name).

key: [reconciled name alias] value: [DtObjectNameDeconflictionEntry *]

SubordinateOrderMap Lookup table for sorting subordinates into proper order.

Keyed by originalObjectName of parents Key: [originalObjectName of parent] Value: [DtSubordinateOrderEntry*]

typedef SubordinateOrderMap::iterator DtObjectNameDeconflictionTable::SubordinateMapIterator
typedef SubordinateOrderMap::const_iterator DtObjectNameDeconflictionTable::const_SubordinateMapIterator

Constructor & Destructor Documentation

DtObjectNameDeconflictionTable::DtObjectNameDeconflictionTable ( )

default constructor

virtual DtObjectNameDeconflictionTable::~DtObjectNameDeconflictionTable ( )
virtual

destructor

DtObjectNameDeconflictionTable::DtObjectNameDeconflictionTable ( const DtObjectNameDeconflictionTable orig)

copy constructor

Member Function Documentation

DtObjectNameDeconflictionTable& DtObjectNameDeconflictionTable::operator= ( const DtObjectNameDeconflictionTable orig)

assignment operator

virtual const DtString& DtObjectNameDeconflictionTable::addAndDeconflict ( const DtString sScenarioName,
const DtString sOriginalObjectName,
const DtString sParentName,
unsigned  nOriginalDesignator 
)
virtual

Does not repeat a deconfliction.

if sScenarioName already appear in myNameXrefIndex, then the alias will be returned, without changing anything.

virtual void DtObjectNameDeconflictionTable::clear ( )
virtual
virtual DtObjectNameDeconflictionEntry* DtObjectNameDeconflictionTable::find ( const DtString sScenarioName,
const DtString sOriginalObjectName 
)
virtual
virtual const DtObjectNameDeconflictionEntry* DtObjectNameDeconflictionTable::find ( const DtString sScenarioName,
const DtString sOriginalObjectName 
) const
virtual
virtual DtObjectNameDeconflictionEntry* DtObjectNameDeconflictionTable::find ( const DtString objectNameAlias)
virtual
virtual const DtObjectNameDeconflictionEntry* DtObjectNameDeconflictionTable::find ( const DtString objectNameAlias) const
virtual
virtual DtSubordinateOrderEntry* DtObjectNameDeconflictionTable::findSubordinateEntry ( const DtString parentName)
virtual
virtual const DtSubordinateOrderEntry* DtObjectNameDeconflictionTable::findSubordinateEntry ( const DtString parentName) const
virtual
virtual unsigned DtObjectNameDeconflictionTable::originalDesignator ( const DtString sScenarioName,
const DtString sOriginalObjectName 
) const
virtual
virtual void DtObjectNameDeconflictionTable::remove ( const DtString sScenarioName,
const DtString sOriginalObjectName 
)
virtual

remove() removes cross reference and alias associated with the given scenario name / object name combination.

virtual void DtObjectNameDeconflictionTable::remove ( const DtString sScenarioName)
virtual

remove() Removes all entries associated with sScenarioName;

virtual const DtString& DtObjectNameDeconflictionTable::safeName ( const DtString sScenarioName,
const DtString sOriginalObjectName 
) const
virtual
virtual std::pair<DtObjectNameDeconflictionTable::const_NameXrefIndexIterator, DtObjectNameDeconflictionTable::const_NameXrefIndexIterator> DtObjectNameDeconflictionTable::searchXrefRange ( const DtString sScenarioName) const
virtual
virtual DtString DtObjectNameDeconflictionTable::deconflictName ( const DtString sObjectName) const
protectedvirtual
virtual DtString DtObjectNameDeconflictionTable::generateRandomSequence ( unsigned  nLimit) const
protectedvirtual

Member Data Documentation

NameXrefIndex DtObjectNameDeconflictionTable::myNameXrefIndex
protected
AliasMap DtObjectNameDeconflictionTable::myAliasMap
protected
SubordinateOrderMap DtObjectNameDeconflictionTable::mySubordinateMap
protected

The documentation for this class was generated from the following file:

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)