VR-Forces Developer's Guide
 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

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

Public Types

typedef std::map< DtString,
DtString
NameXrefIndex
 
typedef NameXrefIndex::iterator NameXrefIndexIterator
 
typedef
NameXrefIndex::const_iterator 
const_NameXrefIndexIterator
 
typedef std::map< DtString,
DtObjectNameDeconflictionEntry * > 
AliasMap
 
typedef AliasMap::iterator AliasMapIterator
 
typedef AliasMap::const_iterator const_AliasMapIterator
 
typedef std::map< DtString,
DtSubordinateOrderEntry * > 
SubordinateOrderMap
 
typedef
SubordinateOrderMap::iterator 
SubordinateMapIterator
 
typedef
SubordinateOrderMap::const_iterator 
const_SubordinateMapIterator
 

Public Member Functions

 DtObjectNameDeconflictionTable ()
 
virtual ~DtObjectNameDeconflictionTable ()
 
 DtObjectNameDeconflictionTable (const DtObjectNameDeconflictionTable &orig)
 
DtObjectNameDeconflictionTableoperator= (const DtObjectNameDeconflictionTable &orig)
 
virtual const DtStringaddAndDeconflict (const DtString &sScenarioName, const DtString &sOriginalObjectName, const DtString &sParentName, unsigned nOriginalDesignator)
 
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)
 
virtual void remove (const DtString &sScenarioName)
 
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
 

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 Wed Mar 27 22:49:11 EDT 2024 from SVN revision 264633
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)