-// gdcmHeader.h
+// $Header: /cvs/public/gdcm/src/Attic/gdcmHeader.h,v 1.22 2003/05/06 15:52:13 jpr Exp $
#ifndef GDCMHEADER_H
#define GDCMHEADER_H
#include <map>
#include "gdcmCommon.h"
+#include "gdcmUtil.h"
#include "gdcmException.h"
#include "gdcmDictSet.h"
#include "gdcmElValue.h"
private:
/// Pointer to the Value Representation Hash Table which contains all
/// the VR of the DICOM version3 public dictionary.
- static VRHT *dicom_vr;
-
- /// Global dictionary container
- gdcmDictSet* Dicts;
+ gdcmVR *dicom_vr; // Not a class member for thread-safety reasons
+ /// Pointer to global dictionary container
+ gdcmDictSet* Dicts; // Not a class member for thread-safety reasons
/// Public dictionary used to parse this header
gdcmDict* RefPubDict;
/// Optional "shadow dictionary" (private elements) used to parse this
guint16 ReadInt16(void);
guint32 ReadInt32(void);
- guint16 SwapShort(guint16);
- guint32 SwapLong(guint32);
guint32 FindLengthOB(void);
void Initialise(void);
void CheckSwap(void);
- void InitVRDict(void);
void SwitchSwapToBigEndian(void);
// CLEAN ME: NewManualElValToPubDict is NOT called any more.
gdcmElValue* NewManualElValToPubDict(string NewTagName, string VR);
gdcmElValue * ReadNextElement(void);
gdcmElValue * NewElValueByNumber(guint16 group, guint16 element);
gdcmElValue * NewElValueByName(string name);
+
void FindLength(gdcmElValue *);
void FindVR(gdcmElValue *);
void LoadElementValue(gdcmElValue *);
protected:
FILE * fp;
FileType filetype;
+
+ gdcmElValue * GetElValueByNumber(guint16 group, guint16 element);
+
+ guint16 SwapShort(guint16); // needed by gdcmFile
+ guint32 SwapLong(guint32); // for JPEG Files :-(
bool OpenFile(bool exception_on_error = false)
throw(gdcmFileError);
bool CloseFile(void);