DATAKIT API  V2025.1
dtk_DcmReader.hpp
Go to the documentation of this file.
1 #ifndef _UTIL_DCM_READER_HPP_
2 #define _UTIL_DCM_READER_HPP_
3 
4 #include "def/define.h"
7 #include "util/dtk_maindoc.hpp"
9 #include "util/dtk_reader.hpp"
10 #include "util/error_dtk.hpp"
12 #include "util/util_ptr_dtk.hpp"
13 #include "util/util_stl_dtk.hpp"
14 
15 #define DCMbyteData Dtk_UChar8
16 
17 class InternalDcm;
18 
19 class DcmReader : public Dtk_Reader
20 {
21 protected:
24  char* _data;
27 
28 
29  // Dtk_ErrorStatus _ReadFile(); ----> oldest methode
31  Dtk_ErrorStatus _DecodePoints( char* start, char* end, Dtk_tab<Dtk_pnt>& points,Dtk_Int32 Comp_value = -1);
32  Dtk_ErrorStatus DecodeStream(char* Start,char* End,Dtk_Int32 a2,Dtk_tab<Dtk_pnt>& points);
33 // void decodeB64( char*start,char* End, unsigned char* &output,Dtk_Int32& out_len );
34  Dtk_ErrorStatus _DecodeIndices( char* start, char* end, Dtk_tab<Dtk_UInt32>& indices );
35 // void _findNextDatas( const char*, char*, char**, char** );
36 
37 
38  InternalDcm *_interneReader;
39  void Inventory();
40  //Mandatory
41 public:
42  virtual ~DcmReader();
44 
46  static Dtk_bool Enable();
47 
49  Dtk_MainDocPtr& outDocument);
50  Dtk_ErrorStatus GetFileVersion(const Dtk_string &inInputFile, Dtk_string& outVersion);
52  const Dtk_string& inInputFile,
53  Dtk_MainDocPtr& inoutDocument,
54  Dtk_ComponentPtr& outRootComponent);
55  Dtk_ErrorStatus PopulateComponentsTree(const Dtk_tab< Dtk_StreamPtr >& inArrayStream, Dtk_MainDocPtr& inoutDocument, Dtk_ComponentPtr& outRootComponent );
57 
59  const Dtk_ComponentPtr& inComponent,
60  Dtk_NodePtr& outRootNode);
65  const Dtk_string &inEntityName,
66  Dtk_ObjectPtr &outEntity);
67 
71 
72  //Mandatory
73 };
74 #endif
75 
DcmReader::GetVersion
Dtk_Int32 GetVersion()
Dtk_ID
uint32_t Dtk_ID
Definition: define.h:689
DcmReader::EndPopulateComponentsTree
Dtk_ErrorStatus EndPopulateComponentsTree()
DcmReader::_curvesTab
Dtk_tab< Dtk_CurvePtr > _curvesTab
Definition: dtk_DcmReader.hpp:26
DcmReader::_DecodeIndices
Dtk_ErrorStatus _DecodeIndices(char *start, char *end, Dtk_tab< Dtk_UInt32 > &indices)
DcmReader
Definition: dtk_DcmReader.hpp:20
Dtk_Reader
Definition: dtk_reader.hpp:15
DcmReader::Inventory
void Inventory()
DcmReader::_meshsTab
Dtk_tab< Dtk_MeshPtr > _meshsTab
Definition: dtk_DcmReader.hpp:25
Dtk_string
This is a high level string class.
Definition: dtk_string.hpp:58
DcmReader::_UniqueReader
static DcmReader * _UniqueReader
Definition: dtk_DcmReader.hpp:22
DcmReader::ActivateReader
Dtk_ErrorStatus ActivateReader()
Dtk_bool
char Dtk_bool
Definition: define.h:725
DcmReader::ReadAdditionalInfos
Dtk_ErrorStatus ReadAdditionalInfos(const Dtk_ID &inEntityID, const Dtk_string &inEntityName, Dtk_ObjectPtr &outEntity)
DcmReader::ReadComponent
Dtk_ErrorStatus ReadComponent(const Dtk_ComponentPtr &inComponent, Dtk_NodePtr &outRootNode)
DcmReader::GetFileVersion
Dtk_ErrorStatus GetFileVersion(const Dtk_string &inInputFile, Dtk_string &outVersion)
dtk_pnt.hpp
DcmReader::_DecodePoints
Dtk_ErrorStatus _DecodePoints(char *start, char *end, Dtk_tab< Dtk_pnt > &points, Dtk_Int32 Comp_value=-1)
DcmReader::_data
char * _data
Definition: dtk_DcmReader.hpp:24
DcmReader::DesactivateReader
Dtk_ErrorStatus DesactivateReader()
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
dtk_maindoc_ptr.hpp
error_dtk.hpp
Dtk_ErrorStatus
Dtk_ErrorStatus
Definition: error_dtk.hpp:6
DcmReader::PopulateComponentsTree
Dtk_ErrorStatus PopulateComponentsTree(const Dtk_string &inInputFile, Dtk_MainDocPtr &inoutDocument, Dtk_ComponentPtr &outRootComponent)
DcmReader::_ReadFile2
Dtk_ErrorStatus _ReadFile2()
DcmReader::Enable
static Dtk_bool Enable()
DcmReader::ReadAdditionalInfos
Dtk_ErrorStatus ReadAdditionalInfos(Dtk_Node &inNode, Dtk_ObjectPtr &outEntity)
DcmReader::~DcmReader
virtual ~DcmReader()
DcmReader::CreateDocument
Dtk_ErrorStatus CreateDocument(const Dtk_string &inInputFile, Dtk_MainDocPtr &outDocument)
Dtk_SmartPtr
Definition: util_ptr_dtk.hpp:37
dtk_maindoc.hpp
util_stl_dtk.hpp
DcmReader::DecodeStream
Dtk_ErrorStatus DecodeStream(char *Start, char *End, Dtk_Int32 a2, Dtk_tab< Dtk_pnt > &points)
util_ptr_dtk.hpp
define.h
Dtk_tab
This is a high level array class.
Definition: util_stl_dtk.hpp:85
DcmReader::_inputfile
Dtk_string _inputfile
Definition: dtk_DcmReader.hpp:23
util_geom_ptr_dtk.hpp
dtk_string.hpp
dtk_reader.hpp
DcmReader::ReadEntity
Dtk_ErrorStatus ReadEntity(Dtk_Node &inNode, Dtk_EntityPtr &outEntity)
DcmReader::GetDcmReader
static DcmReader * GetDcmReader()
DcmReader::EndComponent
Dtk_ErrorStatus EndComponent(Dtk_ComponentPtr &inComponent)
DcmReader::PopulateComponentsTree
Dtk_ErrorStatus PopulateComponentsTree(const Dtk_tab< Dtk_StreamPtr > &inArrayStream, Dtk_MainDocPtr &inoutDocument, Dtk_ComponentPtr &outRootComponent)
DcmReader::_interneReader
InternalDcm * _interneReader
Definition: dtk_DcmReader.hpp:38
DcmReader::DcmReader
DcmReader()