Program: gdcm
Module: $RCSfile: gdcmFileHelper.h,v $
Language: C++
- Date: $Date: 2005/01/20 16:35:10 $
- Version: $Revision: 1.2 $
+ Date: $Date: 2005/01/25 15:44:24 $
+ Version: $Revision: 1.7 $
Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
l'Image). All rights reserved. See Doc/License.txt or
namespace gdcm
{
-class Header;
+class File;
class ValEntry;
class BinEntry;
+class SeqEntry;
class PixelReadConvert;
class PixelWriteConvert;
class DocEntryArchive;
//-----------------------------------------------------------------------------
/**
- * \brief In addition to Dicom Header exploration, this class is designed
+ * \brief In addition to Dicom header exploration, this class is designed
* for accessing the image/volume content. One can also use it to
* write Dicom/ACR-NEMA/RAW files.
*/
public:
FileHelper( );
- FileHelper( Header *header );
+ FileHelper( File *header );
FileHelper( std::string const &filename );
virtual ~FileHelper();
void Print(std::ostream &os = std::cout, std::string const & indent = "");
- /// Accessor to \ref Header
- Header *GetHeader() { return HeaderInternal; }
+ // File methods
+ bool SetValEntry(std::string const &content,
+ uint16_t group, uint16_t elem);
+ bool SetBinEntry(uint8_t *content, int lgth,
+ uint16_t group, uint16_t elem);
+
+ ValEntry *InsertValEntry(std::string const &content,
+ uint16_t group, uint16_t elem);
+ BinEntry *InsertBinEntry(uint8_t *binArea, int lgth,
+ uint16_t group, uint16_t elem);
+ SeqEntry *InsertSeqEntry(uint16_t group, uint16_t elem);
+
+ /// Accessor to \ref File
+ File *GetFile() { return FileInternal; }
size_t GetImageDataSize();
size_t GetImageDataRawSize();
void SetImageData(uint8_t *data, size_t expectedSize);
- // User datas
+ // User data
void SetUserData(uint8_t *data, size_t expectedSize);
uint8_t* GetUserData();
size_t GetUserDataSize();
- // RBG datas (from file
+ // RBG data (from file
uint8_t* GetRGBData();
size_t GetRGBDataSize();
- // RAW datas (from file
+ // RAW data (from file
uint8_t* GetRawData();
size_t GetRawDataSize();
bool WriteAcr (std::string const &fileName);
bool Write (std::string const &fileName);
- bool SetEntry(std::string const &content,
- uint16_t group, uint16_t elem);
- bool SetEntry(uint8_t *content, int lgth,
- uint16_t group, uint16_t elem);
- bool ReplaceOrCreate(std::string const &content,
- uint16_t group, uint16_t elem);
- bool ReplaceOrCreate(uint8_t *binArea, int lgth,
- uint16_t group, uint16_t elem);
-
uint8_t* GetLutRGBA();
// Write mode
- void SetWriteModeToRaw() { SetWriteMode(WMODE_RAW); };
+ void SetWriteModeToRaw() { SetWriteMode(WMODE_RAW); };
void SetWriteModeToRGB() { SetWriteMode(WMODE_RGB); };
void SetWriteMode(FileMode mode) { WriteMode = mode; };
FileMode GetWriteMode() { return WriteMode; };
BinEntry *CopyBinEntry(uint16_t group,uint16_t elem);
private:
- void Initialise();
+ void Initialize();
uint8_t *GetRaw();
// members variables:
- /// Header to use to load the file
- Header *HeaderInternal;
+ /// gdcm::File to use to load the file
+ File *FileInternal;
- /// \brief Whether the underlying \ref Header was loaded by
+ /// \brief Whether the underlying \ref gdcm::File was loaded by
/// the constructor or passed to the constructor. When false
/// the destructor is in charge of deletion.
bool SelfHeader;