DATAKIT API  V2025.2
All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Datakit API

Datakit API allows you to read data coming from many software in the same way:

  • You have to Enable the readers you want to use and then Start the Api.
  • When API is started you can Use OpenDocument() method to read a file.
    This method recognizes file format and calls the corresponding reader to give you an assembly tree.
  • From assembly tree, you choose the component you want to read and call ReadComponent method to get Construction tree.
  • From this second tree, you call Get.. method on node following his type to make the reader access to full data information.
  • You have to close opened component with EndComponent() and opened document with EndDocument() method to free data used by the reader.
  • In the end, you need to stop the API.


    All classes except Dtk_API and Dtk_readers are handled via Smart Pointers.
    You have to use the Create method to handle them. They are deleted automatically when they are not used any more.



ObjReader::Enable
static Dtk_bool Enable()
Dtk_SearchFileEnum::ReadPathSearch
@ ReadPathSearch
Definition: dtk_api.hpp:54
Dtk_API::EndDocument
Dtk_ErrorStatus EndDocument(Dtk_MainDocPtr &inoutDocument)
Close a Document.
Dtk_Info::FindAttribute
Dtk_ErrorStatus FindAttribute(const Dtk_string &name, Dtk_Val &val) const
CgrReader::Enable
static Dtk_bool Enable()
SmgReader::Enable
static Dtk_bool Enable()
Dtk_ID
uint32_t Dtk_ID
Definition: define.h:689
write_mesh_solid
int write_mesh_solid(Dtk_mesh *tm)
Dtk_mesh_face
This is a high level face class.
Definition: util_mesh_dtk.hpp:870
Dtk_Info::GetName
Dtk_string GetName() const
Retrieves the entity name.
NavisReader::Enable
static Dtk_bool Enable()
Dtk_StandardRevolutionSurface
This is the Revolution Surface Class. U parametrisation : revolved curve parametrisation V parametris...
Definition: util_geom_dtk.hpp:1106
LavaReader::Enable
static Dtk_bool Enable()
JtReader::Enable
static Dtk_bool Enable()
CgmReader::Enable
static Dtk_bool Enable()
Dtk_Text::TextSubType
DTK_Text_subtype & TextSubType()
Retrieves the text subtype - get/set -.
get_tesselationSuppressDuplicateFace
Dtk_bool get_tesselationSuppressDuplicateFace()
: return current status of suppress duplicate face option default value is enable to deactivate this ...
GltfReader::Enable
static Dtk_bool Enable()
StlReader::Enable
static Dtk_bool Enable()
Dtk_CompositeText::GetNumTexts
Dtk_Size_t GetNumTexts() const
Retrieves the texts number.
tess_set_optimize_mesh
void tess_set_optimize_mesh(int ival)
: Activate or not the optimization of the vertex map
Dtk_API::AddSearchPath
Dtk_ErrorStatus AddSearchPath(const Dtk_SearchFileEnum::RecursivityEnum &inRecursivityEnum, const Dtk_string &inPath)
Add search path to find missing files.
Dtk_SearchFileEnum::RootFolderFirstRecursivity
@ RootFolderFirstRecursivity
Definition: dtk_api.hpp:48
Dtk_SmartPtr::IsNotNULL
Dtk_bool IsNotNULL() const
Definition: util_ptr_dtk.hpp:119
SwReader::Enable
static Dtk_bool Enable()
_3dmReader::Enable
static Dtk_bool Enable()
tess_set_Ratio
void tess_set_Ratio(double tol)
: define a ratio
tess_ShellToMesh
Dtk_ErrorStatus tess_ShellToMesh(const Dtk_ShellPtr &inShell, Dtk_MeshPtr &outMesh, Dtk_Int32 *outIsSolid)
: Make Tesselation from a Dtk_shell and create a Dtk_MeshPtr if available
CerconReader::Enable
static Dtk_bool Enable()
Dtk_Info::GetPersistentName
Dtk_string GetPersistentName() const
DTK_TRUE
#define DTK_TRUE
Definition: define.h:727
Dtk_Symbol
This is the general symbol class. It's basically composed of Dtk_CompositeText and geometrical elemen...
Definition: util_draw_dtk.hpp:6515
Dtk_API::StartAPI
static Dtk_API * StartAPI(const Dtk_string &inTemporyDirectory, Dtk_ErrorStatus &outErrorCode, const Dtk_string &inCustomerID=Dtk_string())
Start DATAKIT API.
DTK_Text_subtype::IsTolBloc
Dtk_bool IsTolBloc() const
Tell if the associated Dtk_text is part of Tolerance Block group - into Dtk_Dimension -.
F3dReader::Enable
static Dtk_bool Enable()
DTK_FDT_MODIFIER
DTK_FDT_MODIFIER
This is the several tolerances modifiers list.
Definition: util_draw_dtk.hpp:63
Dtk_UInt32
uint32_t Dtk_UInt32
Definition: define.h:688
Dtk_string
This is a high level string class.
Definition: dtk_string.hpp:58
Dtk_FCFFeatureIndicatorType
This is the Feature Indicator. It is part of the Dtk_FCFFeatureIndicator. .
Definition: util_draw_dtk.hpp:5908
Dtk_Size_t
size_t Dtk_Size_t
Definition: define.h:712
PlmXmlReader::Enable
static Dtk_bool Enable()
Dtk_Text::GetInfo
const Dtk_InfoPtr & GetInfo() const
Retrieves the text infos - read only -.
Dtk_Text
This is the base text class. It's part of Dtk_CompositeText. It's used into a lot of 2D Entities It c...
Definition: util_draw_dtk.hpp:1126
Dtk_status
Definition: dtk_status.hpp:16
CatiaV4Reader::Enable
static Dtk_bool Enable()
Dtk_Body::Create
static Dtk_BodyPtr Create()
Create a body.
StepReader::Enable
static Dtk_bool Enable()
Dtk_API::EndComponent
Dtk_ErrorStatus EndComponent(Dtk_ComponentPtr &inComponent)
EndComponent.
Dtk_API::OpenDocument
Dtk_ErrorStatus OpenDocument(const Dtk_string &inInputFile, Dtk_MainDocPtr &outDocument)
Open a Document (call EndDocument to close it)
DTK_FALSE
#define DTK_FALSE
Definition: define.h:728
DTK_TYPE_SYMBOL
@ DTK_TYPE_SYMBOL
Definition: define.h:409
Dtk_bool
char Dtk_bool
Definition: define.h:725
Dtk_string::OpenFile
FILE * OpenFile(const Dtk_string &inRights) const
File Utility : Open a file with the given rights.
Dtk_Symbol::Create
static Dtk_SymbolPtr Create()
Base constructor.
RevitReader::Enable
static Dtk_bool Enable()
Dtk_API::ActivateSearchFileEngine
void ActivateSearchFileEngine()
ProeReader::Enable
static Dtk_bool Enable()
CaddsReader::Enable
static Dtk_bool Enable()
tess_InitTesselation
int tess_InitTesselation(Dtk_string inWorkingDirectory, double inTolerance)
Init the tesselation library.
Dtk_Double64
double Dtk_Double64
Definition: define.h:699
DwgReader::Enable
static Dtk_bool Enable()
InvReader::Enable
static Dtk_bool Enable()
ProCeraReader::Enable
static Dtk_bool Enable()
get_tesselation_activateSplitMode
void get_tesselation_activateSplitMode(int &outmode, double &outratio)
: read value of splitting of surface
DTK_ISERROR
@ DTK_ISERROR
Definition: dtk_status.hpp:9
DTK_TYPE_NURBS_SURFACE
@ DTK_TYPE_NURBS_SURFACE
Definition: define.h:495
Dtk_Val
Definition: dtk_val.hpp:67
UgReader::Enable
static Dtk_bool Enable()
Dtk_Val::GetInt
int GetInt(Dtk_status &st=Dtk_status::GetDefaultStatus()) const
tess_getBoundariesFromMeshFace
void tess_getBoundariesFromMeshFace(const Dtk_MeshPtr &mesh, const Dtk_mesh_face *inFace, Dtk_tab< Dtk_tab< Dtk_PolylinePtr > > &outBoundaries)
: reorder the polylines of a Dtk_mesh_face into correct loop
Dtk_API::ManageSearchFile
void ManageSearchFile(Dtk_SearchFileEnum::Status inStatus)
Dtk_API::GetAPI
static Dtk_API * GetAPI()
Get DATAKIT API.
CatiaV5Reader::Enable
static Dtk_bool Enable()
tess_ComputeNormalesFromSurface
int tess_ComputeNormalesFromSurface()
: Check value of option compute normales of vertex from real surface
IgesReader::Enable
static Dtk_bool Enable()
Dtk_Node
This is the Node Class The Dtk_Node object is used to retrieve informations in a Dtk_ComponentPtr obj...
Definition: dtk_maindoc.hpp:230
Dtk_Int32
int32_t Dtk_Int32
Definition: define.h:687
CatiaV6Reader::Enable
static Dtk_bool Enable()
TesselationIsStarted
Dtk_ErrorStatus TesselationIsStarted()
: Check if tesselation is initialized
DTK_TYPE_FACE
@ DTK_TYPE_FACE
Definition: define.h:141
Dtk_mesh_face::get_id
int get_id()
Return the face Id.
DTK_Text_subtype::IsTolUpperTol
Dtk_bool IsTolUpperTol() const
Tell if the associated Dtk_text is part of Tolerance Upper Value group - into Dtk_Dimension -.
Dtk_Preview
This is the Dtk_Preview class.
Definition: util_ent_dtk.hpp:695
Dtk_Lump::Create
static Dtk_LumpPtr Create(const Dtk_BodyPtr &inParentBody)
Create a lump in a body.
IfcReader::Enable
static Dtk_bool Enable()
Dtk_SearchFileEnum::AdditionalPathSearch
@ AdditionalPathSearch
Definition: dtk_api.hpp:55
Dtk_SmartPtr::DtkDynamicCast
static Dtk_SmartPtr< T > DtkDynamicCast(const Dtk_SmartPtr< T2 > &p)
Definition: util_ptr_dtk.hpp:101
end_stl_fic
int end_stl_fic(int *ient)
Dtk_Hyperbola::Create
static Dtk_HyperbolaPtr Create(const Dtk_Hyperbola &inToCopy)
Dtk_ErrorStatus
Dtk_ErrorStatus
Definition: error_dtk.hpp:6
DcmReader::Enable
static Dtk_bool Enable()
PsReader::Enable
static Dtk_bool Enable()
Dtk_API::SetSearchPositionMode
Dtk_ErrorStatus SetSearchPositionMode(Dtk_Int32 inPosition, Dtk_SearchFileEnum::PriorityModeEnum inSearchEnum)
Set Search Position.
Dtk_SmartPtr
Definition: util_ptr_dtk.hpp:37
set_tesselationSuppressDuplicateFace
void set_tesselationSuppressDuplicateFace(Dtk_bool inBval)
: Enable or disable the suppression of duplicate face before tessellation
Dtk_SearchFileEnum::LocalSearch
@ LocalSearch
Definition: dtk_api.hpp:53
reinit_SplitMode
void reinit_SplitMode()
: disable splitting of surface
Dtk_string::c_str
const char * c_str() const
Retrieve the ASCII conversion string.
Dtk_API::SetInternalReadPathSearchFlag
void SetInternalReadPathSearchFlag(Dtk_bool inActivationFlag)
Allow Internal Read Path Search for files of assembly.
Dtk_GraphicalData
This is the Dtk_GraphicalData Class. The Dtk_GraphicalDataPtr object is used to store preview data It...
Definition: dtk_graphical.hpp:27
tess_disableTolAngular
Dtk_bool tess_disableTolAngular()
: return state of Angular tolerance method
Dtk_Val::GetString
Dtk_string GetString(Dtk_status &st=Dtk_status::GetDefaultStatus()) const
Dtk_FCFFeatureIndicatorType::Dtk_FCFFeatureIndicatorTypeEnum
Dtk_FCFFeatureIndicatorTypeEnum
Definition: util_draw_dtk.hpp:5911
CerecReader::Enable
static Dtk_bool Enable()
Dtk_pnt
This is a mathematical point class.
Definition: dtk_pnt.hpp:22
type_detk
type_detk
Definition: define.h:32
set_TesselateSurfaceMethod
void set_TesselateSurfaceMethod(int ival)
: select computation method for surface tesselation
DTK_Text_subtype
This is the DTK_Text_subtype class. It's used to provide semantic data about Dtk_Text type....
Definition: util_draw_dtk.hpp:1012
Dtk_Parabola::Create
static Dtk_ParabolaPtr Create(const Dtk_Parabola &inToCopy)
CreoviewReader::Enable
static Dtk_bool Enable()
Dtk_CompositeText
This is the composite text class. It's basically a Dtk_Text Container. This class represents a group ...
Definition: util_draw_dtk.hpp:1557
CheckUseEdgeTolerance
Dtk_bool CheckUseEdgeTolerance()
: return current status of if we use the tolerance of edge and face read from the part available valu...
DTK_TYPE_EDGE
@ DTK_TYPE_EDGE
Definition: define.h:128
Dtk_Val::GetDouble
double GetDouble(Dtk_status &st=Dtk_status::GetDefaultStatus()) const
tess_ComputeBoundariesFromMesh
int tess_ComputeBoundariesFromMesh()
: Check value of option memorize noundaries of mesh
Dtk_tab< Dtk_pnt >
Dtk_API::ActivateKeepKernelData
void ActivateKeepKernelData()
Keep Kernel Data option (see "How to use KeepKernelData option")
Dtk_SearchFileEnum::Enable
@ Enable
Definition: dtk_api.hpp:63
Dtk_API::ClearSearchPriority
Dtk_ErrorStatus ClearSearchPriority()
Clear Search Priority.
Dtk_API::SetAdditionnalPathSearchFlag
void SetAdditionnalPathSearchFlag(Dtk_bool inActivationFlag)
Allow Additionnal Path Search for files of assembly.
Dtk_tab::size
Dtk_Size_t size() const
Returns the size of the array.
Definition: util_stl_dtk.hpp:504
FbxReader::Enable
static Dtk_bool Enable()
DTK_NOERROR
@ DTK_NOERROR
Definition: dtk_status.hpp:10
tess_set_angular
void tess_set_angular(double angle)
: Set angle for cord heigh ratio method
Dtk_API::StopAPI
static void StopAPI(Dtk_API *&inAPI, Dtk_bool inWriteTimeInLog=1)
Stop DATAKIT API.
Dtk_CompositeText::GetInfo
const Dtk_InfoPtr & GetInfo() const
Retrieves the infos.
tess_EndTesselation
void tess_EndTesselation()
Free the data used by tesselation library.
Dtk_API::ReadComponentGraphic
Dtk_ErrorStatus ReadComponentGraphic(const Dtk_ComponentPtr &inComponent, Dtk_GraphicalDataPtr &outGraphicalData)
Read graphical data from Component (Call EndComponent to free data allocated)
init_stl_write
int init_stl_write(Dtk_string sfic)
Dtk_ToleranceSpecificationContainer::TypeEnum
TypeEnum
Definition: util_draw_dtk.hpp:6207
tess_set_MaxSize
void tess_set_MaxSize(double tol)
: sets maximum size of triangles
tess_disableTolLinear
Dtk_bool tess_disableTolLinear()
: return state of linear tolerance method
Dtk_FCFFeatureIndicatorType::GetIndicatorType
const Dtk_FCFFeatureIndicatorTypeEnum & GetIndicatorType() const
Retrieves the IndicatorType semantic Type - Read Only -.
Definition: util_draw_dtk.hpp:5986
Dtk_tab::at
T & at(Dtk_Size_t k)
Definition: util_stl_dtk.hpp:398
dtkNoError
@ dtkNoError
Definition: error_dtk.hpp:140
VdaReader::Enable
static Dtk_bool Enable()
Dtk_Info::GetId
int GetId() const
SolidEdgeReader::Enable
static Dtk_bool Enable()
Dtk_API::ReadComponent
Dtk_ErrorStatus ReadComponent(const Dtk_ComponentPtr &inComponent, Dtk_NodePtr &outRootNode)
Read Component from Assembly Tree (Call EndComponent to free data allocated)
set_tesselation_activateSplitMode
void set_tesselation_activateSplitMode(const int inmode, const double inratio)
: memorize option for splitting of surfaces before tessellation
Dtk_FCFFeatureIndicatorType::CreateGeometries
Dtk_ErrorStatus CreateGeometries(Dtk_tab< Dtk_CurvePtr > &outGeoms) const
Process IndicatorType Related geometries.
Dtk_dir
This is a mathematical direction class.
Definition: dtk_dir.hpp:15
tess_set_linear
void tess_set_linear(double tol)
: Set tolerance for linear tolerance method
Dtk_API
Definition: dtk_api.hpp:75
Dtk_Volume::Create
static Dtk_VolumePtr Create(const Dtk_BodyPtr &inParentBody)
Create a volume in a body.
Dtk_API::SetLocalPathSearchFlag
void SetLocalPathSearchFlag(Dtk_bool inActivationFlag)
Allow Local Path Search for files of assembly.
AcisReader::Enable
static Dtk_bool Enable()