Program: gdcm
Module: $RCSfile: gdcmGlobal.cxx,v $
Language: C++
- Date: $Date: 2005/01/23 10:12:34 $
- Version: $Revision: 1.16 $
+ Date: $Date: 2005/04/05 10:56:25 $
+ Version: $Revision: 1.23 $
Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
l'Image). All rights reserved. See Doc/License.txt or
#include "gdcmDebug.h"
#include "gdcmVR.h"
#include "gdcmTS.h"
+#include "gdcmDictGroupName.h"
#include "gdcmDictSet.h"
#include "gdcmDicomDirElement.h"
namespace gdcm
{
-// Those global string that are return by reference everywhere in gdcm code
-// used to be in gdcmCommon.h but due to a 'bug' in gcc/MacOSX
-// you cannot have static initialization in a multithreaded environment
-// since there is a lazy construction everything got skrew up somehow
-// Therefore the actual initialization is done in a cxx file (avoid
-// duplicated symbol), and an extern is used in gdcmCommon.h
+//-----------------------------------------------------------------------------
+/// \brief Those global string that are returned by reference everywhere in
+/// gdcm code used to be in gdcmCommon.h but due to a 'bug' in gcc/MacOSX
+/// you cannot have static initialization in a multithreaded environment
+/// since there is a lazy construction everything got skrew up somehow
+/// Therefore the actual initialization is done in a cxx file (avoid
+/// duplicated symbol), and an extern is used in gdcmCommon.h
const std::string GDCM_UNKNOWN = "gdcm::Unknown";
const std::string GDCM_UNFOUND = "gdcm::Unfound";
const std::string GDCM_BINLOADED = "gdcm::Binary data loaded";
const std::string GDCM_NOTLOADED = "gdcm::NotLoaded";
const std::string GDCM_UNREAD = "gdcm::UnRead";
-/**
- * \brief Pointer to a container, holding _all_ the Dicom Dictionaries.
- */
-DictSet *Global::Dicts = (DictSet *)0;
-
-/**
- * \brief Pointer to a hash table containing the 'Value Representations'.
- */
-VR *Global::ValRes = (VR *)0;
-
-/**
- * \brief Pointer to a hash table containing the Transfer Syntax codes
- * and their english description
- */
-TS *Global::TranSyn = (TS *)0;
-
-/**
- * \brief Pointer to the hash table containing the Dicom Elements
- * necessary to describe each part of a DICOMDIR
- */
-DicomDirElement *Global::ddElem = (DicomDirElement *)0;
+//-----------------------------------------------------------------------------
+DictSet *Global::Dicts = (DictSet *)0;
+VR *Global::ValRes = (VR *)0;
+TS *Global::TranSyn = (TS *)0;
+DictGroupName *Global::GroupName = (DictGroupName *)0;
+DicomDirElement *Global::ddElem = (DicomDirElement *)0;
+//-----------------------------------------------------------------------------
/**
* \brief Global container
*/
Global Glob;
+//-------------------------------------------------------------------------
+// Constructor / Destructor
/**
* \brief constructor : populates the various H Tables
*/
{
if (ValRes || TranSyn || Dicts || ddElem)
{
- gdcmVerboseMacro( "VR or TS or Dicts already allocated");
+ gdcmWarningMacro( "VR or TS or Dicts already allocated");
return;
}
- Dicts = new DictSet();
- ValRes = new VR();
- TranSyn = new TS();
- ddElem = new DicomDirElement();
+ Dicts = new DictSet();
+ ValRes = new VR();
+ TranSyn = new TS();
+ GroupName = new DictGroupName();
+ ddElem = new DicomDirElement();
}
/**
delete Dicts;
delete ValRes;
delete TranSyn;
+ delete GroupName;
delete ddElem;
}
+
+//-----------------------------------------------------------------------------
+// Public
+/**
+ * \brief returns a pointer to Dictionaries Table
+ */
+DictSet *Global::GetDicts()
+{
+ return Dicts;
+}
+
/**
* \brief returns a pointer to the 'Value Representation Table'
*/
{
return ValRes;
}
+
/**
* \brief returns a pointer to the 'Transfer Syntax Table'
*/
{
return TranSyn;
}
+
/**
- * \brief returns a pointer to Dictionaries Table
+ * \brief returns a pointer to the Group name correspondance table
*/
-DictSet *Global::GetDicts()
+DictGroupName *Global::GetDictGroupName()
{
- return Dicts;
+ return GroupName;
}
+
/**
* \brief returns a pointer to the DicomDir related elements Table
*/
{
return ddElem;
}
+
+//-----------------------------------------------------------------------------
+// Protected
+
+//-----------------------------------------------------------------------------
+// Private
+
+//-----------------------------------------------------------------------------
+// Print
+
+//-----------------------------------------------------------------------------
} // end namespace gdcm