]> Creatis software - gdcm.git/blobdiff - src/gdcmGlobal.h
Fix mistypings
[gdcm.git] / src / gdcmGlobal.h
index 677f97cc6c2f3c8f2028591c78e35aff6048d5e9..fbe1e4580fbabbb4bcec42e6cf5844ff0811e536 100644 (file)
@@ -3,12 +3,12 @@
   Program:   gdcm
   Module:    $RCSfile: gdcmGlobal.h,v $
   Language:  C++
-  Date:      $Date: 2004/06/20 18:08:47 $
-  Version:   $Revision: 1.2 $
+  Date:      $Date: 2007/08/22 16:14:04 $
+  Version:   $Revision: 1.13 $
                                                                                 
   Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
   l'Image). All rights reserved. See Doc/License.txt or
-  http://www.creatis.insa-lyon.fr/Public/Gdcm/License.htm for details.
+  http://www.creatis.insa-lyon.fr/Public/Gdcm/License.html for details.
                                                                                 
      This software is distributed WITHOUT ANY WARRANTY; without even
      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
                                                                                 
 =========================================================================*/
 
-#ifndef GDCMGLOBAL_H
-#define GDCMGLOBAL_H
+#ifndef _GDCMGLOBAL_H_
+#define _GDCMGLOBAL_H_
 
-#include "gdcmVR.h"
-#include "gdcmTS.h"
-#include "gdcmDictSet.h"
-#include "gdcmDicomDirElement.h"
+#include "gdcmCommon.h"
 
+namespace GDCM_NAME_SPACE 
+{
+class DictSet;
+class VR;
+class TS;
+class DictGroupName;
+class DicomDirElement;
 //-----------------------------------------------------------------------------
 /**
  * \brief   This class contains all globals elements that might be
  *          instanciated only once (singletons).
  */
-class GDCM_EXPORT gdcmGlobal {
+class Dict;
+class GDCM_EXPORT Global
+{
+friend class DictSet; // to allow setting DefaultPubDict without 
+                      // providing anybody an accesor !
 public:
-   gdcmGlobal(void);
-   ~gdcmGlobal();
+   Global();
+   ~Global();
 
-   static gdcmDictSet *GetDicts(void);
-   static gdcmVR *GetVR(void);
-   static gdcmTS *GetTS(void);
-   static gdcmDicomDirElement *GetDicomDirElements(void);
+   /// \brief   returns a pointer to Dictionaries Table 
+   static DictSet *GetDicts() { return Dicts;}
+   /// \brief   returns a pointer to the 'Value Representation Table' 
+   static VR *GetVR(){ return ValRes; }
+   /// \brief   returns a pointer to the 'Transfer Syntax Table'
+   static TS *GetTS(){ return TranSyn; }
+   /// \brief   returns a pointer to the Group name correspondance table
+   static DictGroupName *GetDictGroupName() { return GroupName; }
+   /// \brief   returns a pointer to the DicomDir related elements Table 
+   static DicomDirElement *GetDicomDirElements(){ return ddElem; }
 
 private:
-   static gdcmDictSet *Dicts; 
-   static gdcmVR *VR;
-   static gdcmTS *TS; 
-   static gdcmDicomDirElement *ddElem;
+   /// Pointer to a container, holding _all_ the Dicom Dictionaries.
+   static DictSet *Dicts;
+   /// Pointer to a hash table containing the 'Value Representations'.
+   static VR *ValRes;
+   /// \brief Pointer to a hash table containing the Transfer Syntax codes 
+   ///        and their english description 
+   static TS *TranSyn; 
+   /// \brief Pointer to a hash table containing the Group codes 
+   ///        and their english name (from NIH) 
+   static DictGroupName *GroupName; 
+   /// \brief Pointer to the hash table containing the Dicom Elements necessary 
+   ///        to describe each part of a DICOMDIR 
+   static DicomDirElement *ddElem;
+   /// pointer to the Default Public Dictionnary, redundantly store here, 
+   /// in order not to acces the HTable every time!
+   static Dict *DefaultPubDict; 
 };
+} // end namespace gdcm
 
 //-----------------------------------------------------------------------------
 #endif