3.5.0
Loading...
Searching...
No Matches
tigl::CTiglUIDManager Class Reference

#include <CTiglUIDManager.h>

Data Structures

struct  TypedPtr
 

Public Member Functions

TIGL_EXPORT void Clear ()
 
TIGL_EXPORT CTiglUIDManager ()
 
TIGL_EXPORT ITiglGeometricComponent & GetGeometricComponent (const std::string &uid) const
 
TIGL_EXPORT CTiglRelativelyPositionedComponent * GetParentGeometricComponent (const std::string &uid) const
 
TIGL_EXPORT std::set< const CTiglUIDObject * > GetReferences (const std::string &uid) const
 
TIGL_EXPORT CTiglRelativelyPositionedComponent & GetRelativeComponent (const std::string &uid) const
 
TIGL_EXPORT const RelativeComponentContainerType & GetRelativeComponents () const
 
TIGL_EXPORT const RelativeComponentContainerType & GetRootGeometricComponents () const
 
TIGL_EXPORT const ShapeContainerType & GetShapeContainer () const
 
TIGL_EXPORT bool HasGeometricComponent (const std::string &uid) const
 
TIGL_EXPORT bool IsReferenced (const std::string &uid) const
 
template<typename T>
bool IsType (const std::string &uid) const
 
TIGL_EXPORT bool IsUIDRegistered (const std::string &uid) const
 
template<typename T>
bool IsUIDRegistered (const std::string &uid) const
 
TIGL_EXPORT bool IsUIDRegistered (const std::string &uid, const std::type_info &typeInfo) const
 
TIGL_EXPORT std::string MakeUIDUnique (const std::string &baseUID) const
 
template<typename T>
void RegisterObject (const std::string &uid, T &object)
 
template<typename T>
void RegisterReference (const std::string &uid, T &object)
 
TIGL_EXPORT TypedPtr ResolveObject (const std::string &uid) const
 
template<typename T>
T & ResolveObject (const std::string &uid) const
 
TIGL_EXPORT TypedPtr ResolveObject (const std::string &uid, const std::type_info &typeInfo) const
 
template<typename T>
std::vector< T * > ResolveObjects () const
 
TIGL_EXPORT void SetParentComponents ()
 
TIGL_EXPORT bool TryUnregisterObject (const std::string &uid)
 
template<typename T>
bool TryUnregisterReference (const std::string &uid, T &object)
 
TIGL_EXPORT void UnregisterObject (const std::string &uid)
 
TIGL_EXPORT void UpdateObjectUID (const std::string &oldUID, const std::string &newUID)
 

Private Types

typedef std::map< std::string, TypedPtr > CPACSObjectMap
 
typedef std::unordered_map< ITiglUIDRefObject *, int > UIDReferenceEntries
 
typedef std::map< std::string, UIDReferenceEntries > UIDReferenceMap
 

Private Member Functions

void AddGeometricComponent (const std::string &uid, ITiglGeometricComponent *componentPtr)
 
void BuildTree ()
 
 CTiglUIDManager (const CTiglUIDManager &)
 
void operator= (const CTiglUIDManager &)
 
void RegisterObject (const std::string &uid, void *object, const std::type_info &typeInfo)
 
void RegisterReference (const std::string &targetUid, ITiglUIDRefObject *source)
 
bool TryRemoveGeometricComponent (const std::string &uid)
 
bool TryUnregisterReference (const std::string &targetUid, ITiglUIDRefObject *source)
 
bool TryUpdateGeometricComponentUID (const std::string &oldUID, const std::string &newUID)
 
void Update ()
 
void UpdateUIDReferences (const std::string &oldUID, const std::string &newUID)
 

Private Attributes

ShapeContainerType allShapes
 All components of the configuration.
 
CPACSObjectMap cpacsObjects
 All objects in CPACS which have a UID.
 
bool invalidated
 Internal state flag.
 
RelativeComponentContainerType relativeComponents
 All relative components of the configuration.
 
CTiglRelativelyPositionedComponent * rootComponent
 Root component injected by configuration.
 
RelativeComponentContainerType rootComponents
 All root components that have children.
 
UIDReferenceMap uidReferences
 All references to a specific UID.
 

Member Typedef Documentation

◆ CPACSObjectMap

typedef std::map<std::string, TypedPtr> tigl::CTiglUIDManager::CPACSObjectMap
private

◆ UIDReferenceEntries

typedef std::unordered_map<ITiglUIDRefObject*, int> tigl::CTiglUIDManager::UIDReferenceEntries
private

◆ UIDReferenceMap

typedef std::map<std::string, UIDReferenceEntries> tigl::CTiglUIDManager::UIDReferenceMap
private

Constructor & Destructor Documentation

◆ CTiglUIDManager() [1/2]

TIGL_EXPORT tigl::CTiglUIDManager::CTiglUIDManager ( )

◆ CTiglUIDManager() [2/2]

tigl::CTiglUIDManager::CTiglUIDManager ( const CTiglUIDManager & )
private

Member Function Documentation

◆ AddGeometricComponent()

void tigl::CTiglUIDManager::AddGeometricComponent ( const std::string & uid,
ITiglGeometricComponent * componentPtr )
private

◆ BuildTree()

void tigl::CTiglUIDManager::BuildTree ( )
private

◆ Clear()

TIGL_EXPORT void tigl::CTiglUIDManager::Clear ( )

◆ GetGeometricComponent()

TIGL_EXPORT ITiglGeometricComponent & tigl::CTiglUIDManager::GetGeometricComponent ( const std::string & uid) const

◆ GetParentGeometricComponent()

TIGL_EXPORT CTiglRelativelyPositionedComponent * tigl::CTiglUIDManager::GetParentGeometricComponent ( const std::string & uid) const

◆ GetReferences()

TIGL_EXPORT std::set< const CTiglUIDObject * > tigl::CTiglUIDManager::GetReferences ( const std::string & uid) const

◆ GetRelativeComponent()

TIGL_EXPORT CTiglRelativelyPositionedComponent & tigl::CTiglUIDManager::GetRelativeComponent ( const std::string & uid) const

◆ GetRelativeComponents()

TIGL_EXPORT const RelativeComponentContainerType & tigl::CTiglUIDManager::GetRelativeComponents ( ) const

◆ GetRootGeometricComponents()

TIGL_EXPORT const RelativeComponentContainerType & tigl::CTiglUIDManager::GetRootGeometricComponents ( ) const

◆ GetShapeContainer()

TIGL_EXPORT const ShapeContainerType & tigl::CTiglUIDManager::GetShapeContainer ( ) const

◆ HasGeometricComponent()

TIGL_EXPORT bool tigl::CTiglUIDManager::HasGeometricComponent ( const std::string & uid) const

◆ IsReferenced()

TIGL_EXPORT bool tigl::CTiglUIDManager::IsReferenced ( const std::string & uid) const

◆ IsType()

template<typename T>
bool tigl::CTiglUIDManager::IsType ( const std::string & uid) const
inline

◆ IsUIDRegistered() [1/3]

TIGL_EXPORT bool tigl::CTiglUIDManager::IsUIDRegistered ( const std::string & uid) const

◆ IsUIDRegistered() [2/3]

template<typename T>
bool tigl::CTiglUIDManager::IsUIDRegistered ( const std::string & uid) const
inline

◆ IsUIDRegistered() [3/3]

TIGL_EXPORT bool tigl::CTiglUIDManager::IsUIDRegistered ( const std::string & uid,
const std::type_info & typeInfo ) const

◆ MakeUIDUnique()

TIGL_EXPORT std::string tigl::CTiglUIDManager::MakeUIDUnique ( const std::string & baseUID) const

◆ operator=()

void tigl::CTiglUIDManager::operator= ( const CTiglUIDManager & )
private

◆ RegisterObject() [1/2]

template<typename T>
void tigl::CTiglUIDManager::RegisterObject ( const std::string & uid,
T & object )
inline

◆ RegisterObject() [2/2]

void tigl::CTiglUIDManager::RegisterObject ( const std::string & uid,
void * object,
const std::type_info & typeInfo )
private

◆ RegisterReference() [1/2]

void tigl::CTiglUIDManager::RegisterReference ( const std::string & targetUid,
ITiglUIDRefObject * source )
private

◆ RegisterReference() [2/2]

template<typename T>
void tigl::CTiglUIDManager::RegisterReference ( const std::string & uid,
T & object )
inline

◆ ResolveObject() [1/3]

TIGL_EXPORT TypedPtr tigl::CTiglUIDManager::ResolveObject ( const std::string & uid) const

◆ ResolveObject() [2/3]

template<typename T>
T & tigl::CTiglUIDManager::ResolveObject ( const std::string & uid) const
inline

◆ ResolveObject() [3/3]

TIGL_EXPORT TypedPtr tigl::CTiglUIDManager::ResolveObject ( const std::string & uid,
const std::type_info & typeInfo ) const

◆ ResolveObjects()

template<typename T>
std::vector< T * > tigl::CTiglUIDManager::ResolveObjects ( ) const
inline

◆ SetParentComponents()

TIGL_EXPORT void tigl::CTiglUIDManager::SetParentComponents ( )

◆ TryRemoveGeometricComponent()

bool tigl::CTiglUIDManager::TryRemoveGeometricComponent ( const std::string & uid)
private

◆ TryUnregisterObject()

TIGL_EXPORT bool tigl::CTiglUIDManager::TryUnregisterObject ( const std::string & uid)

◆ TryUnregisterReference() [1/2]

bool tigl::CTiglUIDManager::TryUnregisterReference ( const std::string & targetUid,
ITiglUIDRefObject * source )
private

◆ TryUnregisterReference() [2/2]

template<typename T>
bool tigl::CTiglUIDManager::TryUnregisterReference ( const std::string & uid,
T & object )
inline

◆ TryUpdateGeometricComponentUID()

bool tigl::CTiglUIDManager::TryUpdateGeometricComponentUID ( const std::string & oldUID,
const std::string & newUID )
private

◆ UnregisterObject()

TIGL_EXPORT void tigl::CTiglUIDManager::UnregisterObject ( const std::string & uid)

◆ Update()

void tigl::CTiglUIDManager::Update ( )
private

◆ UpdateObjectUID()

TIGL_EXPORT void tigl::CTiglUIDManager::UpdateObjectUID ( const std::string & oldUID,
const std::string & newUID )

◆ UpdateUIDReferences()

void tigl::CTiglUIDManager::UpdateUIDReferences ( const std::string & oldUID,
const std::string & newUID )
private

Field Documentation

◆ allShapes

ShapeContainerType tigl::CTiglUIDManager::allShapes
private

All components of the configuration.

◆ cpacsObjects

CPACSObjectMap tigl::CTiglUIDManager::cpacsObjects
private

All objects in CPACS which have a UID.

◆ invalidated

bool tigl::CTiglUIDManager::invalidated
private

Internal state flag.

◆ relativeComponents

RelativeComponentContainerType tigl::CTiglUIDManager::relativeComponents
private

All relative components of the configuration.

◆ rootComponent

CTiglRelativelyPositionedComponent* tigl::CTiglUIDManager::rootComponent
private

Root component injected by configuration.

◆ rootComponents

RelativeComponentContainerType tigl::CTiglUIDManager::rootComponents
private

All root components that have children.

◆ uidReferences

UIDReferenceMap tigl::CTiglUIDManager::uidReferences
private

All references to a specific UID.


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