DATAKIT API  V2025.4
Dtk_NodeConnector Class Referenceabstract

This is the Dtk_NodeConnector Class.
. More...

+ Inheritance diagram for Dtk_NodeConnector:

Data Structures

class  SubEntity
 

Public Types

enum  ReasonCategoryEnum {
  UnknownCategory = 0, PlacementCategory, GeneralAssociationCategory, VisibilityCategory,
  FirstRefBlockSituationCategory, SecondRefBlockSituationCategory, ThirdRefBlockSituationCategory
}
 Reason Category. Global Category of the NodeConnector uesed to gather Reason into families. More...
 
enum  ReasonLinkEnum {
  Unknown = 0, VerticallyAligned, HorizontallyAligned, StackedLeft,
  StackedRight, StackedAbove, StackedBelow, PositionallyFixed,
  OrientationallyFixed, ForceHidden, ForceVisible, ForceClipped,
  KeepOnlyFdt, FirstRefBlockSituation_Common, FirstRefBlockSituation_1, FirstRefBlockSituation_2,
  FirstRefBlockSituation_3, SecondRefBlockSituation_Common, SecondRefBlockSituation_1, SecondRefBlockSituation_2,
  SecondRefBlockSituation_3, ThirdRefBlockSituation_Common, ThirdRefBlockSituation_1, ThirdRefBlockSituation_2,
  ThirdRefBlockSituation_3, AssociatedGeometry, AssociatedFeature, SubPMI,
  DefaultAnnotationLink, HighlightedGeometry, Support, AssociatedAxisSystem,
  AssociatedXDirection, AssociatedYDirection, AssociatedZDirection, AssociatedCenterPoint,
  Context
}
 Reason - Type of the Dtk_NodeConnector -. It's used to filter connectors to same elements. More...
 

Public Member Functions

Dtk_ErrorStatus AddSubEntities (const Dtk_tab< SubEntity > &inSubEntities)
 Add a set of SubEntities - defined by their IDs and Types - to the SubEntities list. More...
 
Dtk_ErrorStatus AddSubEntity (const SubEntity &inSubEntity)
 Add a SubEntity - defined by their IDs and Types - to the SubEntities list. More...
 
Dtk_Int32 CheckAssociatedPathComponentID (const Dtk_MainDocPtr &inMainDocPtr)
 Checks if the Path Component ID exist into Dtk_MainDocPtr. More...
 
Dtk_Int32 DtkDynamicType (const Dtk_Int32 &inId)
 Retrieves the dynamic entity type. More...
 
virtual int DtkDynamicType (const int &inId)=0
 
virtual void dump (FILE *file=stdout)
 
type_detk get_type_detk () const
 
Dtk_ID GetAssociatedComponentID () const
 Returns the Component ID referenced by the connector. More...
 
const Dtk_tab< Dtk_ID > & GetAssociatedPathComponentID () const
 Returns the Path Component ID referenced by the connector from Root to Target. More...
 
void GetAssociatedPathComponentID (Dtk_tab< Dtk_ID > &outAssociatedPathComponentID) const
 
Dtk_ID GetNodeId () const
 Returns the Node id referenced by the connector. More...
 
type_detk GetPointedEntityType () const
 Retrieves the pointed entity Type. More...
 
Dtk_Node::FullType GetPointingEntityType () const
 Retrieves the pointing entity FullType. Should be the FullType of the Dtk_Node containing the Dtk_NodeConnector. More...
 
Dtk_NodeConnector::ReasonLinkEnum GetReasonLink (ReasonCategoryEnum &outReasonCategory) const
 Gets the Reason Link of the Dtk_NodeConnector to specify the reason of the connection. More...
 
virtual Dtk_Size_t GetSize () const
 
Dtk_ErrorStatus GetSubEntities (Dtk_tab< Dtk_ID > &outEntitiesIDs, Dtk_tab< type_detk > &outEntitiesTypes) const
 Retrieves The connected SubEntities - IDs and types -. More...
 
Dtk_ErrorStatus GetSubEntities (Dtk_tab< SubEntity > &outSubEntities) const
 Retrieves the SubEntities array - defined by their IDs and Types -. More...
 
Dtk_Size_t GetSubEntitiesNb () const
 Returns the number of the geometric entities. More...
 
void SetAssociatedComponentID (const Dtk_ID &inComponentID)
 Sets the component ID. More...
 
void SetAssociatedPathComponentID (const Dtk_tab< Dtk_ID > &inPathComponentID)
 Sets the Path Component ID from Root to Target. More...
 
void SetNodeId (const Dtk_ID &inNodeId)
 Sets the Node id. More...
 
void SetPointedEntityType (const type_detk inPointedEntityType)
 Sets the pointed entity Type. More...
 
void SetPointingEntityType (const Dtk_Node::FullType inPointingEntityType)
 Sets the pointing entity Type. More...
 
void SetReasonLink (const ReasonLinkEnum inReasonLink)
 Sets the Reason Link of the Dtk_NodeConnector to specify the reason of the connection. More...
 
Dtk_ErrorStatus SetSubEntities (const Dtk_tab< Dtk_ID > &inEntitiesIDs, const Dtk_tab< type_detk > &inEntitiesTypes)
 Returns the set of Additional Entities defined by their IDs and Types. More...
 
Dtk_ErrorStatus SetSubEntities (const Dtk_tab< SubEntity > &inSubEntities)
 Sets of SubEntities - defined by their IDs and Types -. More...
 

Static Public Member Functions

static Dtk_NodeConnectorPtr Create ()
 Calls default constructor to allocate a new object. More...
 
static Dtk_NodeConnectorPtr Create (const Dtk_NodeConnector &in)
 Calls copy constructor to allocate a new object. More...
 
static Dtk_NodeConnectorDtkDynamicCast (Dtk_Object *s)
 Performs a dynamic cast - doesn't need RTTI -. More...
 
static Dtk_string ReasonCategoryEnumToString (const ReasonCategoryEnum &inEnum)
 
static Dtk_string ReasonLinkEnumToString (const ReasonLinkEnum &inEnum)
 

Protected Types

enum  { _typeID = DTK_TYPE_OBJECT }
 
enum  { _typeID = DTK_TYPE_NODE_CONNECTOR }
 

Protected Member Functions

void _Copy (const Dtk_NodeConnector &s)
 
void _Init ()
 
void _Reset ()
 
virtual Dtk_ObjectClone ()
 
 Dtk_NodeConnector ()
 Default constructor. More...
 
 Dtk_NodeConnector (const Dtk_NodeConnector &in)
 Copy constructor. More...
 
 ~Dtk_NodeConnector ()
 Destructor. More...
 

Protected Attributes

Dtk_Handle * _Private
 
unsigned long count_
 

Detailed Description

This is the Dtk_NodeConnector Class.
.

See also
Use Dtk_NodeConnectorPtr class to handle it.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
protectedinherited
Enumerator
_typeID 

◆ anonymous enum

anonymous enum
protected
Enumerator
_typeID 

◆ ReasonCategoryEnum

Reason Category. Global Category of the NodeConnector uesed to gather Reason into families.

Enumerator
UnknownCategory 
PlacementCategory 
GeneralAssociationCategory 
VisibilityCategory 
FirstRefBlockSituationCategory 
SecondRefBlockSituationCategory 
ThirdRefBlockSituationCategory 

◆ ReasonLinkEnum

Reason - Type of the Dtk_NodeConnector -. It's used to filter connectors to same elements.

Enumerator
Unknown 
VerticallyAligned 
HorizontallyAligned 
StackedLeft 
StackedRight 
StackedAbove 
StackedBelow 
PositionallyFixed 
OrientationallyFixed 
ForceHidden 
ForceVisible 
ForceClipped 
KeepOnlyFdt 
FirstRefBlockSituation_Common 
FirstRefBlockSituation_1 
FirstRefBlockSituation_2 
FirstRefBlockSituation_3 
SecondRefBlockSituation_Common 
SecondRefBlockSituation_1 
SecondRefBlockSituation_2 
SecondRefBlockSituation_3 
ThirdRefBlockSituation_Common 
ThirdRefBlockSituation_1 
ThirdRefBlockSituation_2 
ThirdRefBlockSituation_3 
AssociatedGeometry 
AssociatedFeature 
SubPMI 
DefaultAnnotationLink 
HighlightedGeometry 
Support 
AssociatedAxisSystem 
AssociatedXDirection 
AssociatedYDirection 
AssociatedZDirection 
AssociatedCenterPoint 
Context 

Constructor & Destructor Documentation

◆ Dtk_NodeConnector() [1/2]

Dtk_NodeConnector::Dtk_NodeConnector ( )
protected

Default constructor.

◆ Dtk_NodeConnector() [2/2]

Dtk_NodeConnector::Dtk_NodeConnector ( const Dtk_NodeConnector in)
protected

Copy constructor.

Parameters
inObject to copy from.

◆ ~Dtk_NodeConnector()

Dtk_NodeConnector::~Dtk_NodeConnector ( )
protected

Destructor.

Member Function Documentation

◆ _Copy()

void Dtk_NodeConnector::_Copy ( const Dtk_NodeConnector s)
protected

◆ _Init()

void Dtk_NodeConnector::_Init ( )
protected

◆ _Reset()

void Dtk_NodeConnector::_Reset ( )
protected

◆ AddSubEntities()

Dtk_ErrorStatus Dtk_NodeConnector::AddSubEntities ( const Dtk_tab< SubEntity > &  inSubEntities)

Add a set of SubEntities - defined by their IDs and Types - to the SubEntities list.

Parameters
inSubEntitiesSubEntities array
Returns
DtkNoError if no error.

◆ AddSubEntity()

Dtk_ErrorStatus Dtk_NodeConnector::AddSubEntity ( const SubEntity inSubEntity)

Add a SubEntity - defined by their IDs and Types - to the SubEntities list.

Parameters
inSubEntitySubEntity
Returns
DtkNoError if no error.

◆ CheckAssociatedPathComponentID()

Dtk_Int32 Dtk_NodeConnector::CheckAssociatedPathComponentID ( const Dtk_MainDocPtr inMainDocPtr)

Checks if the Path Component ID exist into Dtk_MainDocPtr.

Returns true if path connector exists else returns false

◆ Clone()

virtual Dtk_Object* Dtk_NodeConnector::Clone ( )
protectedvirtual

◆ Create() [1/2]

static Dtk_NodeConnectorPtr Dtk_NodeConnector::Create ( )
static

Calls default constructor to allocate a new object.

◆ Create() [2/2]

static Dtk_NodeConnectorPtr Dtk_NodeConnector::Create ( const Dtk_NodeConnector in)
static

Calls copy constructor to allocate a new object.

Parameters
inObject to copy from.

◆ DtkDynamicCast()

static Dtk_NodeConnector* Dtk_NodeConnector::DtkDynamicCast ( Dtk_Object s)
static

Performs a dynamic cast - doesn't need RTTI -.

◆ DtkDynamicType() [1/2]

Dtk_Int32 Dtk_NodeConnector::DtkDynamicType ( const Dtk_Int32 inId)

Retrieves the dynamic entity type.

◆ DtkDynamicType() [2/2]

◆ dump()

virtual void Dtk_Object::dump ( FILE *  file = stdout)
virtualinherited

◆ get_type_detk()

type_detk Dtk_NodeConnector::get_type_detk ( ) const
Returns
The type of the entity type - DTK_TYPE_FDT -

◆ GetAssociatedComponentID()

Dtk_ID Dtk_NodeConnector::GetAssociatedComponentID ( ) const

Returns the Component ID referenced by the connector.

◆ GetAssociatedPathComponentID() [1/2]

const Dtk_tab<Dtk_ID>& Dtk_NodeConnector::GetAssociatedPathComponentID ( ) const

Returns the Path Component ID referenced by the connector from Root to Target.

◆ GetAssociatedPathComponentID() [2/2]

void Dtk_NodeConnector::GetAssociatedPathComponentID ( Dtk_tab< Dtk_ID > &  outAssociatedPathComponentID) const

◆ GetNodeId()

Dtk_ID Dtk_NodeConnector::GetNodeId ( ) const

Returns the Node id referenced by the connector.

◆ GetPointedEntityType()

type_detk Dtk_NodeConnector::GetPointedEntityType ( ) const

Retrieves the pointed entity Type.

Returns
The pointed entity Type.

◆ GetPointingEntityType()

Dtk_Node::FullType Dtk_NodeConnector::GetPointingEntityType ( ) const

Retrieves the pointing entity FullType. Should be the FullType of the Dtk_Node containing the Dtk_NodeConnector.

Returns
The pointing entity FullType.

◆ GetReasonLink()

Dtk_NodeConnector::ReasonLinkEnum Dtk_NodeConnector::GetReasonLink ( ReasonCategoryEnum outReasonCategory) const

Gets the Reason Link of the Dtk_NodeConnector to specify the reason of the connection.

Parameters
outReasonCategoryThe Reason Category - processed from the ReasonLink -
Returns
The Reason Link.

◆ GetSize()

◆ GetSubEntities() [1/2]

Dtk_ErrorStatus Dtk_NodeConnector::GetSubEntities ( Dtk_tab< Dtk_ID > &  outEntitiesIDs,
Dtk_tab< type_detk > &  outEntitiesTypes 
) const

Retrieves The connected SubEntities - IDs and types -.

Parameters
outEntitiesIDsSubEntities Ids
outEntitiesTypesSubEntities types
Remarks
Sizes of the 2 arrays are equal
Returns
DtkNoError if no error.

◆ GetSubEntities() [2/2]

Dtk_ErrorStatus Dtk_NodeConnector::GetSubEntities ( Dtk_tab< SubEntity > &  outSubEntities) const

Retrieves the SubEntities array - defined by their IDs and Types -.

Parameters
outSubEntitiesThe resulting SubEntities array
Returns
DtkNoError if no error.

◆ GetSubEntitiesNb()

Dtk_Size_t Dtk_NodeConnector::GetSubEntitiesNb ( ) const

Returns the number of the geometric entities.

◆ ReasonCategoryEnumToString()

static Dtk_string Dtk_NodeConnector::ReasonCategoryEnumToString ( const ReasonCategoryEnum inEnum)
static

◆ ReasonLinkEnumToString()

static Dtk_string Dtk_NodeConnector::ReasonLinkEnumToString ( const ReasonLinkEnum inEnum)
static

◆ SetAssociatedComponentID()

void Dtk_NodeConnector::SetAssociatedComponentID ( const Dtk_ID inComponentID)

Sets the component ID.

◆ SetAssociatedPathComponentID()

void Dtk_NodeConnector::SetAssociatedPathComponentID ( const Dtk_tab< Dtk_ID > &  inPathComponentID)

Sets the Path Component ID from Root to Target.

◆ SetNodeId()

void Dtk_NodeConnector::SetNodeId ( const Dtk_ID inNodeId)

Sets the Node id.

◆ SetPointedEntityType()

void Dtk_NodeConnector::SetPointedEntityType ( const type_detk  inPointedEntityType)

Sets the pointed entity Type.

Parameters
inPointedEntityTypeThe pointed entity Type.

◆ SetPointingEntityType()

void Dtk_NodeConnector::SetPointingEntityType ( const Dtk_Node::FullType  inPointingEntityType)

Sets the pointing entity Type.

Parameters
inPointingEntityTypeThe pointing entity Type.

◆ SetReasonLink()

void Dtk_NodeConnector::SetReasonLink ( const ReasonLinkEnum  inReasonLink)

Sets the Reason Link of the Dtk_NodeConnector to specify the reason of the connection.

Parameters
inReasonLinkThe Reason Link

◆ SetSubEntities() [1/2]

Dtk_ErrorStatus Dtk_NodeConnector::SetSubEntities ( const Dtk_tab< Dtk_ID > &  inEntitiesIDs,
const Dtk_tab< type_detk > &  inEntitiesTypes 
)

Returns the set of Additional Entities defined by their IDs and Types.

Parameters
inEntitiesIDsSubEntities Ids
inEntitiesTypesSubEntities types
Remarks
The size of the 2 arrays must be equal
Returns
DtkNoError if no error.

◆ SetSubEntities() [2/2]

Dtk_ErrorStatus Dtk_NodeConnector::SetSubEntities ( const Dtk_tab< SubEntity > &  inSubEntities)

Sets of SubEntities - defined by their IDs and Types -.

Parameters
inSubEntitiesSubEntities array
Returns
DtkNoError if no error.

Field Documentation

◆ _Private

Dtk_Handle* Dtk_NodeConnector::_Private
protected

◆ count_

unsigned long Dtk_Object::count_
protectedinherited