Program: gdcm
Module: $RCSfile: gdcmTS.h,v $
Language: C++
- Date: $Date: 2005/10/18 10:43:32 $
- Version: $Revision: 1.21 $
+ Date: $Date: 2005/11/28 16:31:23 $
+ Version: $Revision: 1.26 $
Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
l'Image). All rights reserved. See Doc/License.txt or
#ifndef GDCMTS_H
#define GDCMTS_H
-#include "gdcmCommon.h"
+#include "gdcmRefCounter.h"
#include <map>
#include <string>
* \brief Container for dicom 'Transfer Syntax' Hash Table
* \note This is a singleton
*/
-class GDCM_EXPORT TS
+class GDCM_EXPORT TS : public RefCounter
{
+ gdcmTypeMacro(TS);
+
public:
-enum SpecialType {
- ImplicitVRLittleEndian = 0,
- ImplicitVRBigEndianPrivateGE,
- ExplicitVRLittleEndian,
- DeflatedExplicitVRLittleEndian,
- ExplicitVRBigEndian,
- JPEGBaselineProcess1,
- JPEGExtendedProcess2_4,
- JPEGExtendedProcess3_5,
- JPEGSpectralSelectionProcess6_8,
- JPEGFullProgressionProcess10_12,
- JPEGLosslessProcess14,
- JPEGLosslessProcess14_1,
- JPEGLSLossless,
- JPEGLSNearLossless,
- JPEG2000Lossless,
- JPEG2000,
- RLELossless,
- MPEG2MainProfile,
- UnknownTS
-};
+ enum SpecialType {
+ ImplicitVRLittleEndian = 0,
+ ImplicitVRBigEndianPrivateGE,
+ ExplicitVRLittleEndian,
+ DeflatedExplicitVRLittleEndian,
+ ExplicitVRBigEndian,
+ JPEGBaselineProcess1,
+ JPEGExtendedProcess2_4,
+ JPEGExtendedProcess3_5,
+ JPEGSpectralSelectionProcess6_8,
+ JPEGFullProgressionProcess10_12,
+ JPEGLosslessProcess14,
+ JPEGLosslessProcess14_1,
+ JPEGLSLossless,
+ JPEGLSNearLossless,
+ JPEG2000Lossless,
+ JPEG2000,
+ RLELossless,
+ MPEG2MainProfile,
+ UnknownTS
+ };
public:
- TS();
- ~TS();
+/// \brief Constructs a gdcmTS with a RefCounter
+ static TS *New() {return new TS();}
- void Print(std::ostream &os = std::cout);
+ virtual void Print(std::ostream &os = std::cout,
+ std::string const &indent = "" );
int Count(TSKey const &key);
TSAtr const &GetValue(TSKey const &key);
SpecialType GetSpecialTransferSyntax(TSKey const &key);
const char* GetSpecialTransferSyntax(SpecialType t);
+protected:
+ TS();
+ ~TS();
+
private:
TSHT TsMap;
};