DATAKIT API  V2025.1
Dtk_Component Class Reference

This is the Component Class.
The Dtk_ComponentPtr object is used as element into an assembly tree.
Is typically used as a Part into an Assembly Tree.
. More...

+ Inheritance diagram for Dtk_Component:

Public Types

enum  ComponentAvailabilityEnum {
  ComponentMissing = 0, ComponentFound = 1, ComponentInternal = 2, ComponentPhantom = 4,
  ComponentAdditionnalReference = 8, ComponentAssemblyGeometry = 16, ComponentWithUnavailableReader = 32
}
 
enum  ComponentTypeEnum { InstanceComponentType = 0, PrototypeComponentType, CatalogComponentType, VirtualComponentType }
 

Public Member Functions

void AddChild (const Dtk_ComponentPtr &inChild)
 Adds a child Dtk_Component to main Component. More...
 
void AddMetaData (const Dtk_MetaDataPtr &inMetaData)
 Adds a Dtk_MetaDataPtr to the Dtk_DocElement. More...
 
void AddMetaDataGroup (const Dtk_MetaDataGroupPtr &inMetaDataGroup, Dtk_bool inAddMetadata=DTK_FALSE)
 Adds a Dtk_MetaDataGroupPtr to the Dtk_DocElement. More...
 
DtkErrorStatus AddOverrideSet (const Dtk_OverrideSetPtr &inOverrideSet)
 Add Override set to a prototype component
More...
 
void AddProperty (const Dtk_PropertiesPtr &inProperty)
 Adds a Dtk_PropertiesPtr to the Dtk_DocElement. More...
 
const ComponentAvailabilityEnum ComponentAvailability () const
 Give Dtk_Component availability - read only -. More...
 
const ComponentTypeEnumComponentType () const
 Retrieves the Dtk_Component Type - read only -. More...
 
Dtk_NodePtr CreateAxisSystemNode (Dtk_string inName, const Dtk_ID &inAxisSystemID, const type_detk inSubType=DTK_TYPE_AXIS_SYSTEM)
 Create a AxisSystem Dtk_NodePtr from a AxisSystemPtr. More...
 
Dtk_NodePtr CreateBodyNode (Dtk_string inName, const Dtk_ID &inBodyID, const Dtk_Int32 inBodyFlag, const type_detk inSubType=DTK_TYPE_BODY)
 Create a Body Dtk_NodePtr from a body ID. More...
 
Dtk_NodePtr CreateCameraNode (Dtk_string inName, const Dtk_ID &inCameraID)
 Create a Camera Dtk_NodePtr from a Camera. More...
 
Dtk_NodePtr CreateColorInfosSetNode (Dtk_string inName, const Dtk_ID &inColorInfosSetID)
 Create a ColorInfosSet Dtk_NodePtr from a ColorInfosSetPtr. More...
 
Dtk_NodePtr CreateConstraintNode (Dtk_string inName, const Dtk_ID &inConstraintID, const type_detk inSubType=DTK_TYPE_CONSTRAINT)
 Create a Constraint Dtk_NodePtr from a Dtk_ConstraintPtr. More...
 
Dtk_NodePtr CreateDrawingNode (Dtk_string inName, const Dtk_ID &inDrawingID)
 Create a Drawing Dtk_NodePtr from a Dtk_DrawingPtr. More...
 
Dtk_NodePtr CreateFdtAnnotationSetNode (Dtk_string inName, const Dtk_ID &inAnnotationSetID)
 Create a FdtAnnotationSet Dtk_NodePtr from a Dtk_FdtAnnotationSetPtr ID. More...
 
Dtk_NodePtr CreateFdtNode (Dtk_string inName, const Dtk_ID &inFdtID, const type_detk inSubType=DTK_TYPE_FDT)
 Create a Fdt Dtk_NodePtr from a Dtk_FdtPtr ID. More...
 
Dtk_NodePtr CreateKinematicsNode (Dtk_string inName, const Dtk_ID &inKinematicID)
 Create a Kinematic Dtk_NodePtr from a Dtk_KinematicPtr. More...
 
Dtk_NodePtr CreateLayerInfosSetNode (Dtk_string inName, const Dtk_ID &inLayerInfosSetID)
 Create a LayerInfosSet Dtk_NodePtr from a LayerInfosSetPtr. More...
 
Dtk_NodePtr CreateMeshNode (Dtk_string inName, const Dtk_ID &inMeshID, const Dtk_Int32 inMeshFlag, const type_detk inSubType=DTK_TYPE_MESH)
 Create a Mesh Dtk_NodePtr from a Mesh ID. More...
 
Dtk_NodePtr CreateMetaDataNode (Dtk_string inName, const Dtk_ID &inMetaDataID, const type_detk inSubType=DTK_TYPE_METADATA)
 Create a MetaData Dtk_NodePtr from a Dtk_MetaDataPtr. More...
 
Dtk_NodePtr CreateModelDisplayNode (Dtk_string inName, const Dtk_ID &inDisplayModelID, const type_detk inSubType=DTK_TYPE_NO_SUBTYPE)
 Create a ModelDisplay Dtk_NodePtr from a DisplayModel. More...
 
Dtk_NodePtr CreateVirtualNode (Dtk_string inName, const type_detk inSubType=DTK_TYPE_NO_SUBTYPE)
 Create a Virtual Dtk_NodePtr. More...
 
Dtk_ErrorStatus DevalidateNode (const Dtk_NodeID &inNodeID)
 Devalidates Component into MainDoc. More...
 
Dtk_Int32 DtkDynamicType (const int &inId)
 Retrieves the dynamic entity type. More...
 
virtual void dump (FILE *file=stdout)
 
const Dtk_stringFullPathName () const
 Retrieves the Dtk_Component FullPathName - read only -. More...
 
Dtk_tab< Dtk_Int32GetActivatedChildrenInCatalog () const
 Return Activated Children Index or empty array if Component isn't a catalog. More...
 
const DtkReaderTypeGetAssociatedModuleType () const
 Retrieves the Dtk_Component AssociatedModuleType - read only -. More...
 
Dtk_ErrorStatus GetBoundingBox (Dtk_pnt &outMin, Dtk_pnt &outMax)
 Get BoundingBox on Prototype Component if it can be read in original file. More...
 
const Dtk_ComponentPtr GetChild (const Dtk_Size_t &inPos) const
 Retrieves the ith Dtk_ComponentPtr - read only -. More...
 
Dtk_ErrorStatus GetConceptionUnitScale (Dtk_Double64 &outUnitScale) const
 Get the Original Units for documents - geometrical data are given in MM (Scale to MM) /! More...
 
Dtk_ErrorStatus GetConnectorsPointingToThisComponent (Dtk_tab< Dtk_NodeConnectorPtr > &outConnectedEntities)
 Retrieves the connectors pointing on this component. More...
 
Dtk_Int32 GetCurrentLayer () const
 Current layer for Component. More...
 
Dtk_Int32 GetDefaultChildInCatalog () const
 Return Default Child Index or -1 if Component isn't a catalog. More...
 
Dtk_ID GetFatherID (Dtk_Size_t inIndex) const
 Retrieves Dtk_DocElement ith FatherID - read only -. More...
 
Dtk_NodePtr GetFatherNode (const Dtk_NodePtr &inNode) const
 Retrieves the father Dtk_NodePtr of the given Dtk_NodePtr. More...
 
const Dtk_stringGetFileVersion () const
 Get File Version. More...
 
const Dtk_GlobalDataSetPtr GetGlobalDataSet () const
 Retrieve the Dtk_GlobalDataSetPtr attached to the Dtk_Component - get only -. More...
 
Dtk_ID GetID () const
 Retrieves the Dtk_DocElement ID - read only -. More...
 
Dtk_InfoPtr GetInfos () const
 Retrieves the Dtk_DocElement Dtk_InfoPtr - read only -. More...
 
Dtk_MaterialPtr GetMaterial () const
 Retrieves the Dtk_DocElement Dtk_MaterialPtr - read only -. More...
 
Dtk_MetaDataPtr GetMetaData (const Dtk_Size_t &inPos) const
 Retrieves the ith Dtk_MetaDataPtr - read only -. More...
 
Dtk_MetaDataGroupPtr GetMetaDataGroup (const Dtk_Size_t &inPos) const
 Retrieves the ith Dtk_MetaDataGrouplPtr - read only -. More...
 
Dtk_NodePtr GetNodeByID (const Dtk_NodeID &inNodeID) const
 Retrieves a Dtk_NodePtr from the Dtk_Component NodesPool giving his Id. More...
 
Dtk_Size_t GetNumChildren () const
 Retrieves the number of the Dtk_DocElement children - read only -. More...
 
Dtk_Size_t GetNumFathers () const
 GetNumFather. More...
 
Dtk_Size_t GetNumMetaData () const
 Retrieves the number of the Dtk_MetaDataPtr - read only -. More...
 
Dtk_Size_t GetNumMetaDataGroup () const
 Retrieves the number of the Dtk_MetaDataGroupPtr - read only -. More...
 
Dtk_Size_t GetNumNodes () const
 Give number of Nodes in the Component (useful if you want to handle progress bar). More...
 
Dtk_Size_t GetNumOverrideSets () const
 Give number of Override sets in a prototype component
More...
 
DtkErrorStatus GetOverrideSets (Dtk_tab< Dtk_OverrideSetPtr > &outOverrideSet) const
 Give array of Override sets in a prototype component
More...
 
Dtk_PreviewPtr GetPreview () const
 Retrieves the Dtk_DocElement Dtk_PreviewPtr - read only -. More...
 
void GetReadID (Dtk_ID &outReadID) const
 
void GetSelectableLayers (Dtk_tab< Dtk_Int32 > &outSelectableLayers) const
 Selectable layer for Component. More...
 
DtkErrorStatus GetSiblingName (Dtk_string &outSiblingName) const
 SiblingName for Component. More...
 
virtual Dtk_Size_t GetSize () const
 
void GetVisibleLayers (Dtk_tab< Dtk_Int32 > &outVisibleLayers) const
 Visible layer for Component. More...
 
const Dtk_stringInstanceName () const
 Retrieves the Dtk_Component InstanceName - read only -. More...
 
Dtk_bool IsAdditionnalReference () const
 Return DTK_TRUE if Dtk_Component is Additionnal Reference. More...
 
Dtk_bool IsAssembly () const
 Return DTK_TRUE if Dtk_Component is an assembly. More...
 
Dtk_stringName ()
 
const Dtk_stringName () const
 Retrieves the Dtk_DocElement Name - read only -. More...
 
const Dtk_stringOriginalPathName () const
 Retrieves the Dtk_Component OriginalPathName (read in file) - read only -. More...
 
void ReleasePreview ()
 
Dtk_ErrorStatus ReplaceChildComponent (const Dtk_Size_t &inPos, const Dtk_ComponentPtr &inNewChild)
 Replaces a child Dtk_ComponentPtr by another one. Also updates father lists. More...
 
 SetAsDeprecated ("2022.1", "Use Dtk_Component::GetConceptionUnitScale(Dtk_Double64 &outUnitScale) method instead.") Dtk_Double64 GetConceptionUnitScale() const
 Get the Original Units for documents. More...
 
Dtk_ErrorStatus SetComponentAvailability (const ComponentAvailabilityEnum &inComponentAvailability)
 
void SetConceptionUnitScale (Dtk_Double64 inUnitScale)
 
void SetCurrentLayer (Dtk_Int32 inCurrentLayer)
 
void SetFileVersion (const Dtk_string &inFileVersion)
 
void SetInfos (const Dtk_InfoPtr &inInfos)
 
void SetMaterial (Dtk_MaterialPtr inMaterial)
 
void SetPreview (Dtk_PreviewPtr inPreview)
 
void SetReadID (const Dtk_ID &inNewID)
 
void SetSelectableLayers (const Dtk_tab< Dtk_Int32 > &inSelectableLayers)
 
void SetSelectionDataSet (const Dtk_SelectionDataSetPtr &inSelectionDataSet)
 Attach SelectionDataSet infos to the Dtk_Component - through the Dtk_GlobalDataSetPtr -. More...
 
DtkErrorStatus SetSiblingName (const Dtk_string &inSiblingName)
 
void SetVisibleLayers (const Dtk_tab< Dtk_Int32 > &inVisibleLayers)
 
const Dtk_transfoTransformationMatrix () const
 Retrieves the Dtk_Component TransformationMatrix - read only -. More...
 

Static Public Member Functions

static Dtk_string ComponentAvailabilityEnumToString (const ComponentAvailabilityEnum &inEnum)
 
static Dtk_string ComponentTypeEnumToString (const ComponentTypeEnum &inEnum)
 
static Dtk_Int32 ComponentTypeStringToInt (const Dtk_string &name)
 
static Dtk_ComponentDtkDynamicCast (Dtk_Object *s)
 Performs a dynamic cast - doesn't need RTTI -. More...
 

Protected Types

enum  { _typeID = DTK_TYPE_DOC_ELEMENT }
 
enum  { _typeID = DTK_TYPE_COMPONENT }
 

Protected Member Functions

void _AddChild (const Dtk_DocElementPtr &inChild)
 Adds a child Dtk_DocElement to main Element. More...
 
void _Copy (const Dtk_Node &s)
 
void _copy (const Dtk_Object &s)
 
const Dtk_DocElementPtr _GetChild (const Dtk_Size_t &inPos) const
 Retrieves the ith Dtk_DocElement - read only -. More...
 
void _init ()
 
void _ReleaseNodes ()
 
void _ReleaseVolatileData ()
 
Dtk_ErrorStatus _ReplaceChild (const Dtk_Size_t &inPos, const Dtk_DocElementPtr &inNewChild)
 Replaces a child by another one. Also update father lists. More...
 
void _reset ()
 

Protected Attributes

Dtk_Handle * _Private
 
unsigned long count_
 

Friends

class Dtk_API
 
class Dtk_MainDoc
 
class Dtk_SmartPtr< Dtk_Component >
 

Detailed Description

This is the Component Class.
The Dtk_ComponentPtr object is used as element into an assembly tree.
Is typically used as a Part into an Assembly Tree.
.

See also
Please use the Dtk_Component class to handle it.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
protectedinherited
Enumerator
_typeID 

◆ anonymous enum

anonymous enum
protected
Enumerator
_typeID 

◆ ComponentAvailabilityEnum

Enumerator
ComponentMissing 
ComponentFound 
ComponentInternal 
ComponentPhantom 
ComponentAdditionnalReference 
ComponentAssemblyGeometry 
ComponentWithUnavailableReader 
566  {
567  ComponentMissing = 0,
568  ComponentFound = 1,
569  ComponentInternal = 2,
570  ComponentPhantom = 4,
574  };

◆ ComponentTypeEnum

Enumerator
InstanceComponentType 
PrototypeComponentType 
CatalogComponentType 
VirtualComponentType 
576  {
581 
582  };

Member Function Documentation

◆ _AddChild()

void Dtk_DocElement::_AddChild ( const Dtk_DocElementPtr inChild)
protectedinherited

Adds a child Dtk_DocElement to main Element.

Parameters
inChildThe Dtk_DocElement to be added as a child.

◆ _Copy()

void Dtk_DocElement::_Copy ( const Dtk_Node s)
protectedinherited

◆ _copy()

void Dtk_Object::_copy ( const Dtk_Object s)
protectedinherited

◆ _GetChild()

const Dtk_DocElementPtr Dtk_DocElement::_GetChild ( const Dtk_Size_t inPos) const
protectedinherited

Retrieves the ith Dtk_DocElement - read only -.

Parameters
inPosChild element index.
Returns
the inPos'th Dtk_DocElement

◆ _init()

void Dtk_Object::_init ( )
protectedinherited

◆ _ReleaseNodes()

void Dtk_Component::_ReleaseNodes ( )
protected

◆ _ReleaseVolatileData()

void Dtk_Component::_ReleaseVolatileData ( )
protected

◆ _ReplaceChild()

Dtk_ErrorStatus Dtk_DocElement::_ReplaceChild ( const Dtk_Size_t inPos,
const Dtk_DocElementPtr inNewChild 
)
protectedinherited

Replaces a child by another one. Also update father lists.

Parameters
inPosOld Child element index.
inNewChildThe Dtk_DocElement replacing the old one

Internal use only

Returns
the DtkNoerrror if success.
the dtkErrorOutOfRange if bad inPos parameter.
the dtkErrorNullPointer if inNewChild is NULL.

◆ _reset()

void Dtk_Object::_reset ( )
protectedinherited

◆ AddChild()

void Dtk_Component::AddChild ( const Dtk_ComponentPtr inChild)

Adds a child Dtk_Component to main Component.

Parameters
inChildThe Dtk_Component to be added as a child.

◆ AddMetaData()

void Dtk_DocElement::AddMetaData ( const Dtk_MetaDataPtr inMetaData)
inherited

Adds a Dtk_MetaDataPtr to the Dtk_DocElement.

Parameters
inMetaDataThe Dtk_MetaDataPtr to be added.

◆ AddMetaDataGroup()

void Dtk_DocElement::AddMetaDataGroup ( const Dtk_MetaDataGroupPtr inMetaDataGroup,
Dtk_bool  inAddMetadata = DTK_FALSE 
)
inherited

Adds a Dtk_MetaDataGroupPtr to the Dtk_DocElement.

Parameters
inMetaDataGroupThe Dtk_MetaDataGroupPtr to be added.
inAddMetadataIf we also add the metadata of the group to the Dtk_DocElement

◆ AddOverrideSet()

DtkErrorStatus Dtk_Component::AddOverrideSet ( const Dtk_OverrideSetPtr inOverrideSet)

Add Override set to a prototype component

Returns
dtkNoError if ok.

◆ AddProperty()

void Dtk_DocElement::AddProperty ( const Dtk_PropertiesPtr inProperty)
inherited

Adds a Dtk_PropertiesPtr to the Dtk_DocElement.

Parameters
inPropertyThe Dtk_PropertiesPtr to be added.

◆ ComponentAvailability()

const ComponentAvailabilityEnum Dtk_Component::ComponentAvailability ( ) const

Give Dtk_Component availability - read only -.

Returns
The component availability.

◆ ComponentAvailabilityEnumToString()

static Dtk_string Dtk_Component::ComponentAvailabilityEnumToString ( const ComponentAvailabilityEnum inEnum)
static
585  {
586  switch( inEnum )
587  {
588  case ComponentMissing: return L"ComponentMissing";
589  case ComponentFound: return L"ComponentFound";
590  case ComponentInternal: return L"ComponentInternal";
591  case ComponentPhantom: return L"ComponentPhantom";
592  case ComponentAdditionnalReference: return L"ComponentAdditionnalReference";
593  case ComponentAssemblyGeometry: return L"ComponentAssemblyGeometry";
594  case ComponentWithUnavailableReader: return L"ComponentWithUnavailableReader";
595 
596  default: return L"Unknown";
597  }
598  }

◆ ComponentType()

const ComponentTypeEnum& Dtk_Component::ComponentType ( ) const

Retrieves the Dtk_Component Type - read only -.

Returns
The component Type.

◆ ComponentTypeEnumToString()

static Dtk_string Dtk_Component::ComponentTypeEnumToString ( const ComponentTypeEnum inEnum)
static
601  {
602  switch( inEnum )
603  {
604  case CatalogComponentType: return L"CatalogComponentType";
605  case VirtualComponentType: return L"VirtualComponentType";
606  case InstanceComponentType: return L"InstanceComponentType";
607  case PrototypeComponentType: return L"PrototypeComponentType";
608 
609  default: return L"Unknown";
610  }
611  }

◆ ComponentTypeStringToInt()

static Dtk_Int32 Dtk_Component::ComponentTypeStringToInt ( const Dtk_string name)
static
614  {
615  Dtk_Int32 result = -1;
616 
617  if( name.len() > 0 )
618  {
619  if( name == L"CatalogComponentType" )
620  result = CatalogComponentType;
621  else if( name == L"VirtualComponentType" )
622  result = VirtualComponentType;
623  else if( name == L"InstanceComponentType" )
624  result = InstanceComponentType;
625  else if( name == L"PrototypeComponentType" )
626  result = PrototypeComponentType;
627  }
628 
629  return result;
630  }

◆ CreateAxisSystemNode()

Dtk_NodePtr Dtk_Component::CreateAxisSystemNode ( Dtk_string  inName,
const Dtk_ID inAxisSystemID,
const type_detk  inSubType = DTK_TYPE_AXIS_SYSTEM 
)

Create a AxisSystem Dtk_NodePtr from a AxisSystemPtr.

Parameters
inNameNode name.
inAxisSystemIDAxisPlacementPtr ID.
Returns
the constructed Dtk_NodePtr.

◆ CreateBodyNode()

Dtk_NodePtr Dtk_Component::CreateBodyNode ( Dtk_string  inName,
const Dtk_ID inBodyID,
const Dtk_Int32  inBodyFlag,
const type_detk  inSubType = DTK_TYPE_BODY 
)

Create a Body Dtk_NodePtr from a body ID.

Parameters
inNameNode name.
inBodyIDBody Id.
inBodyFlagBody Info : Wire,Solid, MeshSurface and/or Surface.
Returns
the constructed Dtk_NodePtr.

◆ CreateCameraNode()

Dtk_NodePtr Dtk_Component::CreateCameraNode ( Dtk_string  inName,
const Dtk_ID inCameraID 
)

Create a Camera Dtk_NodePtr from a Camera.

Parameters
inNameNode name.
inCameraIDCamera ID.
Returns
the constructed Dtk_NodePtr.

◆ CreateColorInfosSetNode()

Dtk_NodePtr Dtk_Component::CreateColorInfosSetNode ( Dtk_string  inName,
const Dtk_ID inColorInfosSetID 
)

Create a ColorInfosSet Dtk_NodePtr from a ColorInfosSetPtr.

Parameters
inNameNode name.
inColorInfosSetIDColorInfosSetPtr ID.
Returns
the constructed Dtk_NodePtr.

◆ CreateConstraintNode()

Dtk_NodePtr Dtk_Component::CreateConstraintNode ( Dtk_string  inName,
const Dtk_ID inConstraintID,
const type_detk  inSubType = DTK_TYPE_CONSTRAINT 
)

Create a Constraint Dtk_NodePtr from a Dtk_ConstraintPtr.

Parameters
inNameNode name.
inConstraintIDDtk_ConstraintPtr ID.
Returns
the constructed Dtk_NodePtr.

◆ CreateDrawingNode()

Dtk_NodePtr Dtk_Component::CreateDrawingNode ( Dtk_string  inName,
const Dtk_ID inDrawingID 
)

Create a Drawing Dtk_NodePtr from a Dtk_DrawingPtr.

Parameters
inNameNode name.
inDrawingIDDtk_DrawingPtr ID.
Returns
the constructed Dtk_NodePtr.

◆ CreateFdtAnnotationSetNode()

Dtk_NodePtr Dtk_Component::CreateFdtAnnotationSetNode ( Dtk_string  inName,
const Dtk_ID inAnnotationSetID 
)

Create a FdtAnnotationSet Dtk_NodePtr from a Dtk_FdtAnnotationSetPtr ID.

Parameters
inNameNode name.
inAnnotationSetIDDtk_FdtAnnotationSetPtr ID.
Returns
the constructed Dtk_NodePtr.

◆ CreateFdtNode()

Dtk_NodePtr Dtk_Component::CreateFdtNode ( Dtk_string  inName,
const Dtk_ID inFdtID,
const type_detk  inSubType = DTK_TYPE_FDT 
)

Create a Fdt Dtk_NodePtr from a Dtk_FdtPtr ID.

Parameters
inNameNode name.
inFdtIDDtk_FdtPtr ID.
Returns
the constructed Dtk_NodePtr.

◆ CreateKinematicsNode()

Dtk_NodePtr Dtk_Component::CreateKinematicsNode ( Dtk_string  inName,
const Dtk_ID inKinematicID 
)

Create a Kinematic Dtk_NodePtr from a Dtk_KinematicPtr.

Parameters
inNameNode name.
inKinematicDataDtk_KinematicPtr data.
Returns
the constructed Dtk_NodePtr.

◆ CreateLayerInfosSetNode()

Dtk_NodePtr Dtk_Component::CreateLayerInfosSetNode ( Dtk_string  inName,
const Dtk_ID inLayerInfosSetID 
)

Create a LayerInfosSet Dtk_NodePtr from a LayerInfosSetPtr.

Parameters
inNameNode name.
inLayerInfosSetIDLayerInfosSetPtr ID.
Returns
the constructed Dtk_NodePtr.

◆ CreateMeshNode()

Dtk_NodePtr Dtk_Component::CreateMeshNode ( Dtk_string  inName,
const Dtk_ID inMeshID,
const Dtk_Int32  inMeshFlag,
const type_detk  inSubType = DTK_TYPE_MESH 
)

Create a Mesh Dtk_NodePtr from a Mesh ID.

Parameters
inNameNode name.
inMeshIDMesh Id.
Returns
the constructed Dtk_NodePtr.

◆ CreateMetaDataNode()

Dtk_NodePtr Dtk_Component::CreateMetaDataNode ( Dtk_string  inName,
const Dtk_ID inMetaDataID,
const type_detk  inSubType = DTK_TYPE_METADATA 
)

Create a MetaData Dtk_NodePtr from a Dtk_MetaDataPtr.

Parameters
inNameNode name.
inMetaDataIDDtk_MetaDataPtr ID.
Returns
the constructed Dtk_NodePtr.

◆ CreateModelDisplayNode()

Dtk_NodePtr Dtk_Component::CreateModelDisplayNode ( Dtk_string  inName,
const Dtk_ID inDisplayModelID,
const type_detk  inSubType = DTK_TYPE_NO_SUBTYPE 
)

Create a ModelDisplay Dtk_NodePtr from a DisplayModel.

Parameters
inNameNode name.
inModelDisplayIDDisplayModel ID.
Returns
the constructed Dtk_NodePtr.

◆ CreateVirtualNode()

Dtk_NodePtr Dtk_Component::CreateVirtualNode ( Dtk_string  inName,
const type_detk  inSubType = DTK_TYPE_NO_SUBTYPE 
)

Create a Virtual Dtk_NodePtr.

Parameters
inNameNode name.
Returns
the constructed Dtk_NodePtr.

◆ DevalidateNode()

Dtk_ErrorStatus Dtk_Component::DevalidateNode ( const Dtk_NodeID inNodeID)

Devalidates Component into MainDoc.

Parameters
inNodeIDThe NodeID to devalidate.
Returns
DtkNoError if success.
Remarks
Internal Use only.

◆ DtkDynamicCast()

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

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

◆ DtkDynamicType()

Dtk_Int32 Dtk_Component::DtkDynamicType ( const int &  inId)
virtual

Retrieves the dynamic entity type.

Reimplemented from Dtk_DocElement.

◆ dump()

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

◆ FullPathName()

const Dtk_string& Dtk_Component::FullPathName ( ) const

Retrieves the Dtk_Component FullPathName - read only -.

Returns
The component FullPathName.

◆ GetActivatedChildrenInCatalog()

Dtk_tab<Dtk_Int32> Dtk_Component::GetActivatedChildrenInCatalog ( ) const

Return Activated Children Index or empty array if Component isn't a catalog.

◆ GetAssociatedModuleType()

const DtkReaderType& Dtk_Component::GetAssociatedModuleType ( ) const

Retrieves the Dtk_Component AssociatedModuleType - read only -.

Returns
The component AssociatedModuleType.

◆ GetBoundingBox()

Dtk_ErrorStatus Dtk_Component::GetBoundingBox ( Dtk_pnt outMin,
Dtk_pnt outMax 
)

Get BoundingBox on Prototype Component if it can be read in original file.

Parameters
[out]outMinResulting minimum coordinates
[out]outMaxResulting maximum coordinates
Returns
DtkNoError if success.

◆ GetChild()

const Dtk_ComponentPtr Dtk_Component::GetChild ( const Dtk_Size_t inPos) const

Retrieves the ith Dtk_ComponentPtr - read only -.

Parameters
inPosChild component index.
Returns
the inPos'th Dtk_ComponentPtr
685  { return Dtk_ComponentPtr::DtkDynamicCast( _GetChild(inPos) ); }

◆ GetConceptionUnitScale()

Dtk_ErrorStatus Dtk_Component::GetConceptionUnitScale ( Dtk_Double64 outUnitScale) const

Get the Original Units for documents - geometrical data are given in MM (Scale to MM) /!

Parameters
[out]outUnitScale: Unit Scale (1.0 for MM) /!
Returns
DtkNoError if unit is read

◆ GetConnectorsPointingToThisComponent()

Dtk_ErrorStatus Dtk_Component::GetConnectorsPointingToThisComponent ( Dtk_tab< Dtk_NodeConnectorPtr > &  outConnectedEntities)

Retrieves the connectors pointing on this component.

Returns
The pointing connectors.

◆ GetCurrentLayer()

Dtk_Int32 Dtk_Component::GetCurrentLayer ( ) const

Current layer for Component.

◆ GetDefaultChildInCatalog()

Dtk_Int32 Dtk_Component::GetDefaultChildInCatalog ( ) const

Return Default Child Index or -1 if Component isn't a catalog.

◆ GetFatherID()

Dtk_ID Dtk_DocElement::GetFatherID ( Dtk_Size_t  inIndex) const
inherited

Retrieves Dtk_DocElement ith FatherID - read only -.

Returns
The ith FatherID.

◆ GetFatherNode()

Dtk_NodePtr Dtk_Component::GetFatherNode ( const Dtk_NodePtr inNode) const

Retrieves the father Dtk_NodePtr of the given Dtk_NodePtr.

Parameters
inNodeThe Dtk_NodePtr from which we want the father.
Returns
The wanted Dtk_NodePtr.

◆ GetFileVersion()

const Dtk_string& Dtk_Component::GetFileVersion ( ) const

Get File Version.

◆ GetGlobalDataSet()

const Dtk_GlobalDataSetPtr Dtk_Component::GetGlobalDataSet ( ) const

Retrieve the Dtk_GlobalDataSetPtr attached to the Dtk_Component - get only -.

Returns
The attached Dtk_GlobalDataSetPtr - can be null -

◆ GetID()

Dtk_ID Dtk_DocElement::GetID ( ) const
inherited

Retrieves the Dtk_DocElement ID - read only -.

Returns
The element ID.

◆ GetInfos()

Dtk_InfoPtr Dtk_DocElement::GetInfos ( ) const
inherited

Retrieves the Dtk_DocElement Dtk_InfoPtr - read only -.

Returns
The element Dtk_InfoPtr.

◆ GetMaterial()

Dtk_MaterialPtr Dtk_DocElement::GetMaterial ( ) const
inherited

Retrieves the Dtk_DocElement Dtk_MaterialPtr - read only -.

Returns
The element Dtk_MaterialPtrif if exists .

◆ GetMetaData()

Dtk_MetaDataPtr Dtk_DocElement::GetMetaData ( const Dtk_Size_t inPos) const
inherited

Retrieves the ith Dtk_MetaDataPtr - read only -.

Parameters
inPosMetadata index.
Returns
the inPos'th Dtk_MetaDataPtr

◆ GetMetaDataGroup()

Dtk_MetaDataGroupPtr Dtk_DocElement::GetMetaDataGroup ( const Dtk_Size_t inPos) const
inherited

Retrieves the ith Dtk_MetaDataGrouplPtr - read only -.

Parameters
inPosGroup index.
Returns
the inPos'th Dtk_MetaDataGrouplPtr

◆ GetNodeByID()

Dtk_NodePtr Dtk_Component::GetNodeByID ( const Dtk_NodeID inNodeID) const

Retrieves a Dtk_NodePtr from the Dtk_Component NodesPool giving his Id.

Parameters
inNodeIDWanted Dtk_NodePtr Id.
Returns
The wanted Dtk_NodePtr.

◆ GetNumChildren()

Dtk_Size_t Dtk_DocElement::GetNumChildren ( ) const
inherited

Retrieves the number of the Dtk_DocElement children - read only -.

Returns
The Children number.

◆ GetNumFathers()

Dtk_Size_t Dtk_DocElement::GetNumFathers ( ) const
inherited

GetNumFather.

Returns
Number of fathers

◆ GetNumMetaData()

Dtk_Size_t Dtk_DocElement::GetNumMetaData ( ) const
inherited

Retrieves the number of the Dtk_MetaDataPtr - read only -.

Returns
The Metadata number.

◆ GetNumMetaDataGroup()

Dtk_Size_t Dtk_DocElement::GetNumMetaDataGroup ( ) const
inherited

Retrieves the number of the Dtk_MetaDataGroupPtr - read only -.

Returns
The Group number.

◆ GetNumNodes()

Dtk_Size_t Dtk_Component::GetNumNodes ( ) const

Give number of Nodes in the Component (useful if you want to handle progress bar).

Returns
number of Nodes.

◆ GetNumOverrideSets()

Dtk_Size_t Dtk_Component::GetNumOverrideSets ( ) const

Give number of Override sets in a prototype component

Returns
Override sets.

◆ GetOverrideSets()

DtkErrorStatus Dtk_Component::GetOverrideSets ( Dtk_tab< Dtk_OverrideSetPtr > &  outOverrideSet) const

Give array of Override sets in a prototype component

Returns
dtkNoError if ok.

◆ GetPreview()

Dtk_PreviewPtr Dtk_DocElement::GetPreview ( ) const
inherited

Retrieves the Dtk_DocElement Dtk_PreviewPtr - read only -.

Returns
The element Dtk_PreviewPtr if exists.

◆ GetReadID()

void Dtk_DocElement::GetReadID ( Dtk_ID outReadID) const
inherited

◆ GetSelectableLayers()

void Dtk_Component::GetSelectableLayers ( Dtk_tab< Dtk_Int32 > &  outSelectableLayers) const

Selectable layer for Component.

◆ GetSiblingName()

DtkErrorStatus Dtk_Component::GetSiblingName ( Dtk_string outSiblingName) const

SiblingName for Component.

◆ GetSize()

◆ GetVisibleLayers()

void Dtk_Component::GetVisibleLayers ( Dtk_tab< Dtk_Int32 > &  outVisibleLayers) const

Visible layer for Component.

◆ InstanceName()

const Dtk_string& Dtk_Component::InstanceName ( ) const

Retrieves the Dtk_Component InstanceName - read only -.

Returns
The component InstanceName.

◆ IsAdditionnalReference()

Dtk_bool Dtk_Component::IsAdditionnalReference ( ) const

Return DTK_TRUE if Dtk_Component is Additionnal Reference.

◆ IsAssembly()

Dtk_bool Dtk_Component::IsAssembly ( ) const

Return DTK_TRUE if Dtk_Component is an assembly.

◆ Name() [1/2]

Dtk_string& Dtk_DocElement::Name ( )
inherited

◆ Name() [2/2]

const Dtk_string& Dtk_DocElement::Name ( ) const
inherited

Retrieves the Dtk_DocElement Name - read only -.

Returns
The Element Name.

◆ OriginalPathName()

const Dtk_string& Dtk_Component::OriginalPathName ( ) const

Retrieves the Dtk_Component OriginalPathName (read in file) - read only -.

Returns
The component OriginalPathName.

◆ ReleasePreview()

void Dtk_DocElement::ReleasePreview ( )
inherited

◆ ReplaceChildComponent()

Dtk_ErrorStatus Dtk_Component::ReplaceChildComponent ( const Dtk_Size_t inPos,
const Dtk_ComponentPtr inNewChild 
)

Replaces a child Dtk_ComponentPtr by another one. Also updates father lists.

Parameters
inPosOld Child Dtk_ComponentPtr element index.
inNewChildThe Dtk_ComponentPtr replacing the old one

Internal use only

Returns
the DtkNoerrror if success.
the dtkErrorOutOfRange if bad inPos parameter.
the dtkErrorNullPointer if inNewChild is NULL.
695  { return _ReplaceChild( inPos, Dtk_DocElementPtr::DtkDynamicCast(inNewChild) ); }

◆ SetAsDeprecated()

Dtk_Component::SetAsDeprecated ( "2022.1"  ,
"Use Dtk_Component::GetConceptionUnitScale(Dtk_Double64 &outUnitScale) method instead."   
) const

Get the Original Units for documents.

Deprecated:

◆ SetComponentAvailability()

Dtk_ErrorStatus Dtk_Component::SetComponentAvailability ( const ComponentAvailabilityEnum inComponentAvailability)

◆ SetConceptionUnitScale()

void Dtk_Component::SetConceptionUnitScale ( Dtk_Double64  inUnitScale)

◆ SetCurrentLayer()

void Dtk_Component::SetCurrentLayer ( Dtk_Int32  inCurrentLayer)

◆ SetFileVersion()

void Dtk_Component::SetFileVersion ( const Dtk_string inFileVersion)

◆ SetInfos()

void Dtk_DocElement::SetInfos ( const Dtk_InfoPtr inInfos)
inherited

◆ SetMaterial()

void Dtk_DocElement::SetMaterial ( Dtk_MaterialPtr  inMaterial)
inherited

◆ SetPreview()

void Dtk_DocElement::SetPreview ( Dtk_PreviewPtr  inPreview)
inherited

◆ SetReadID()

void Dtk_DocElement::SetReadID ( const Dtk_ID inNewID)
inherited

◆ SetSelectableLayers()

void Dtk_Component::SetSelectableLayers ( const Dtk_tab< Dtk_Int32 > &  inSelectableLayers)

◆ SetSelectionDataSet()

void Dtk_Component::SetSelectionDataSet ( const Dtk_SelectionDataSetPtr inSelectionDataSet)

Attach SelectionDataSet infos to the Dtk_Component - through the Dtk_GlobalDataSetPtr -.

◆ SetSiblingName()

DtkErrorStatus Dtk_Component::SetSiblingName ( const Dtk_string inSiblingName)

◆ SetVisibleLayers()

void Dtk_Component::SetVisibleLayers ( const Dtk_tab< Dtk_Int32 > &  inVisibleLayers)

◆ TransformationMatrix()

const Dtk_transfo& Dtk_Component::TransformationMatrix ( ) const

Retrieves the Dtk_Component TransformationMatrix - read only -.

Returns
The component TransformationMatrix.

Friends And Related Function Documentation

◆ Dtk_API

friend class Dtk_API
friend

◆ Dtk_MainDoc

friend class Dtk_MainDoc
friend

◆ Dtk_SmartPtr< Dtk_Component >

friend class Dtk_SmartPtr< Dtk_Component >
friend

Field Documentation

◆ _Private

Dtk_Handle* Dtk_Component::_Private
protected

◆ count_

unsigned long Dtk_Object::count_
protectedinherited
Dtk_Component::CatalogComponentType
@ CatalogComponentType
Definition: dtk_maindoc.hpp:579
DTK_TYPE_DOC_ELEMENT
@ DTK_TYPE_DOC_ELEMENT
Definition: define.h:510
Dtk_Component::_typeID
@ _typeID
Definition: dtk_maindoc.hpp:633
Dtk_DocElement::_typeID
@ _typeID
Definition: dtk_maindoc.hpp:104
Dtk_DocElement::_GetChild
const Dtk_DocElementPtr _GetChild(const Dtk_Size_t &inPos) const
Retrieves the ith Dtk_DocElement - read only -.
Dtk_DocElement::_ReplaceChild
Dtk_ErrorStatus _ReplaceChild(const Dtk_Size_t &inPos, const Dtk_DocElementPtr &inNewChild)
Replaces a child by another one. Also update father lists.
Dtk_Component::VirtualComponentType
@ VirtualComponentType
Definition: dtk_maindoc.hpp:580
Dtk_Component::InstanceComponentType
@ InstanceComponentType
Definition: dtk_maindoc.hpp:577
Dtk_Component::ComponentFound
@ ComponentFound
Definition: dtk_maindoc.hpp:568
Dtk_Component::ComponentAssemblyGeometry
@ ComponentAssemblyGeometry
Definition: dtk_maindoc.hpp:572
Dtk_Component::ComponentAdditionnalReference
@ ComponentAdditionnalReference
Definition: dtk_maindoc.hpp:571
Dtk_Component::ComponentWithUnavailableReader
@ ComponentWithUnavailableReader
Definition: dtk_maindoc.hpp:573
Dtk_Int32
int32_t Dtk_Int32
Definition: define.h:687
Dtk_SmartPtr::DtkDynamicCast
static Dtk_SmartPtr< T > DtkDynamicCast(const Dtk_SmartPtr< T2 > &p)
Definition: util_ptr_dtk.hpp:101
Dtk_Component::ComponentInternal
@ ComponentInternal
Definition: dtk_maindoc.hpp:569
Dtk_Component::ComponentPhantom
@ ComponentPhantom
Definition: dtk_maindoc.hpp:570
DTK_TYPE_COMPONENT
@ DTK_TYPE_COMPONENT
Definition: define.h:512
Dtk_Component::PrototypeComponentType
@ PrototypeComponentType
Definition: dtk_maindoc.hpp:578
Dtk_Component::ComponentMissing
@ ComponentMissing
Definition: dtk_maindoc.hpp:567
Dtk_string::len
int len() const
Retrieve the length of the Dtk_string.
Dtk_DocElement::_AddChild
void _AddChild(const Dtk_DocElementPtr &inChild)
Adds a child Dtk_DocElement to main Element.