1 /*=========================================================================
4 Module: $RCSfile: gdcmGlobal.h,v $
6 Date: $Date: 2006/03/22 13:19:25 $
7 Version: $Revision: 1.10 $
9 Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
10 l'Image). All rights reserved. See Doc/License.txt or
11 http://www.creatis.insa-lyon.fr/Public/Gdcm/License.html for details.
13 This software is distributed WITHOUT ANY WARRANTY; without even
14 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
15 PURPOSE. See the above copyright notices for more information.
17 =========================================================================*/
22 #include "gdcmCommon.h"
30 class DicomDirElement;
31 //-----------------------------------------------------------------------------
33 * \brief This class contains all globals elements that might be
34 * instanciated only once (singletons).
37 class GDCM_EXPORT Global
39 friend class DictSet; // to allow setting DefaultPubDict without
40 // providing any body an accesor !
45 /// \brief returns a pointer to Dictionaries Table
46 static DictSet *GetDicts() { return Dicts;}
47 /// \brief returns a pointer to the 'Value Representation Table'
48 static VR *GetVR(){ return ValRes; }
49 /// \brief returns a pointer to the 'Transfer Syntax Table'
50 static TS *GetTS(){ return TranSyn; }
51 /// \brief returns a pointer to the Group name correspondance table
52 static DictGroupName *GetDictGroupName() { return GroupName; }
53 /// \brief returns a pointer to the DicomDir related elements Table
54 static DicomDirElement *GetDicomDirElements(){ return ddElem; }
57 /// Pointer to a container, holding _all_ the Dicom Dictionaries.
58 static DictSet *Dicts;
59 /// Pointer to a hash table containing the 'Value Representations'.
61 /// \brief Pointer to a hash table containing the Transfer Syntax codes
62 /// and their english description
64 /// \brief Pointer to a hash table containing the Group codes
65 /// and their english name (from NIH)
66 static DictGroupName *GroupName;
67 /// \brief Pointer to the hash table containing the Dicom Elements necessary
68 /// to describe each part of a DICOMDIR
69 static DicomDirElement *ddElem;
70 /// pointer to the Default Public Dictionnary, redundantly store here,
71 /// in order not to acces the HTable every time!
72 static Dict *DefaultPubDict;
74 } // end namespace gdcm
76 //-----------------------------------------------------------------------------