- /// Will be set 1 if user asks to 'go inside' the 'sequences' (VR = "SQ")
- int enableSequences;
-
- /// \brief Amount of printed details for each Header Entry (Dicom Element):
- /// 0 : stands for the least detail level.
- int printLevel;
-
-public:
-
-
-// Print
- // Canonical Printing method (see also gdcmDocument::SetPrintLevel)
- // virtual void Print (std::ostream &os = std::cout);
- // {PrintEntry(os);};
-
- // no more Print method for gdcmDocument (inherits from gdcmElementSet
- // virtual void PrintEntry (std::ostream &os = std::cout)
- // { return Print(os);};
-
- // the 2 following will be merged
- virtual void PrintPubDict (std::ostream &os = std::cout);
- virtual void PrintShaDict (std::ostream &os = std::cout);
-
-// Dictionnaries
- gdcmDict *GetPubDict(void);
- gdcmDict *GetShaDict(void);
- bool SetShaDict(gdcmDict *dict);
- bool SetShaDict(DictKey dictName);
-
-// Informations contained in the parser
- virtual bool IsReadable(void);
- bool IsImplicitVRLittleEndianTransferSyntax(void);
- bool IsExplicitVRLittleEndianTransferSyntax(void);
- bool IsDeflatedExplicitVRLittleEndianTransferSyntax(void);
- bool IsExplicitVRBigEndianTransferSyntax(void);
- FileType GetFileType(void);
-
-// Read (used in gdcmFile, gdcmDicomDir)
- FILE *OpenFile(bool exception_on_error = false) throw(gdcmFileError);
- bool CloseFile(void);
-
-// Write (used in gdcmFile, gdcmDicomDir)
- virtual bool Write(FILE *, FileType);
- virtual void WriteEntryTagVRLength(gdcmDocEntry *tag,
- FILE *_fp, FileType type);
- virtual void WriteEntryValue(gdcmDocEntry *tag,FILE *_fp,FileType type);
- virtual bool WriteEntry(gdcmDocEntry *tag,FILE *_fp,FileType type);
- virtual bool WriteEntries(FILE *_fp,FileType type);
-
- gdcmDocEntry * ReplaceOrCreateByNumber(std::string Value,
- guint16 Group, guint16 Elem);
- bool ReplaceIfExistByNumber (char *Value, guint16 Group, guint16 Elem);
-
- virtual void *LoadEntryVoidArea (guint16 Group, guint16 Element);
- void LoadVLEntry (gdcmDocEntry *entry);
-
-// System access
- guint16 SwapShort(guint16); // needed by gdcmFile
- guint32 SwapLong(guint32); // needed by gdcmFile
- guint16 UnswapShort(guint16); // needed by gdcmFile
- guint32 UnswapLong(guint32); // needed by gdcmFile
-
-protected:
- // Constructor and destructor are protected to forbid end user
- // to instanciate from this class gdcmDocument (only gdcmHeader and
- // gdcmDicomDir are meaningfull).
- gdcmDocument(bool exception_on_error = false);
- gdcmDocument(const char *inFilename,
- bool exception_on_error = false,
- bool enable_sequences = false,
- bool ignore_shadow = false);
- virtual ~gdcmDocument(void);
-
- void gdcmDocument::Parse7FE0 (void);
-// Entry
- int CheckIfEntryExistByNumber(guint16 Group, guint16 Elem ); // int !
- virtual std::string GetEntryByName (std::string tagName);
- virtual std::string GetEntryVRByName (std::string tagName);
- virtual std::string GetEntryByNumber (guint16 group, guint16 element);
- virtual std::string GetEntryVRByNumber(guint16 group, guint16 element);
- virtual int GetEntryLengthByNumber(guint16 group, guint16 element);
-
- virtual bool SetEntryByName (std::string content, std::string tagName);
- virtual bool SetEntryByNumber(std::string content,
- guint16 group, guint16 element);
- virtual bool SetEntryLengthByNumber(guint32 length,
- guint16 group, guint16 element);
-
- virtual size_t GetEntryOffsetByNumber (guint16 Group, guint16 Elem);
- virtual void *GetEntryVoidAreaByNumber(guint16 Group, guint16 Elem);
- virtual bool SetEntryVoidAreaByNumber(void *a, guint16 Group, guint16 Elem);
-
- virtual void UpdateShaEntries(void);
-
-// Header entry
- gdcmDocEntry *GetDocEntryByNumber (guint16 group, guint16 element);
- gdcmDocEntry *GetDocEntryByName (std::string Name);
-
- void LoadDocEntrySafe(gdcmDocEntry *);
-
- // Probabely useless
- //void UpdateGroupLength(bool SkipSequence = false,
- // FileType type = ImplicitVR);
-
- //void AddDocEntry (gdcmDocEntry *);
-
-