Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

gdcm::DictEntry Class Reference

the DictEntry in an element contained by the Dict. It contains : More...

#include <gdcmDictEntry.h>

Inheritance diagram for gdcm::DictEntry:

Inheritance graph
[legend]
Collaboration diagram for gdcm::DictEntry:

Collaboration graph
[legend]
List of all members.

Public Member Functions

void Print (std::ostream &os=std::cout, std::string const &indent="")
 Prints an entry of the Dicom DictionaryEntry.
virtual void SetVR (VRKey const &vr)
 If-and only if-the V(alue) R(epresentation) \ is unset then overwrite it.
virtual void SetVM (TagName const &vm)
 If-and only if-the V(alue) M(ultiplicity) \ is unset then overwrite it.
const TagNameGetVM () const
 returns the VM field of the current DictEntry
bool IsVMUnknown () const
 tells if the V(alue) M(ultiplicity) is known (?!)
const TagNameGetName () const
 Returns the Dicom Name of the current DictEntry e.g. "Patient Name" for Dicom Tag (0x0010, 0x0010).
const uint16_t & GetGroup () const
 Returns the Dicom Group Number.
const uint16_t & GetElement () const
 Returns the Dicom Element Number.
const VRKeyGetVR () const
 Returns the Dicom Value Representation.
bool IsVRUnknown () const
 tells if the V(alue) R(epresentation) is known (?!)
const TagKeyGetKey () const
void Delete ()
 Delete the object.
void Register ()
 Register the object.
void Unregister ()
 Unregister the object.
const unsigned long & GetRefCount () const
 Get the reference counting.
void SetPrintLevel (int level)
 Sets the print level for the Dicom Header Elements.
int GetPrintLevel ()
 Gets the print level for the Dicom Entries.

Static Public Member Functions

static DictEntryNew (uint16_t group, uint16_t elem, VRKey const &vr=GDCM_VRUNKNOWN, TagName const &vm=GDCM_UNKNOWN, TagName const &name=GDCM_UNKNOWN)
 Class allocator.
static TagKey TranslateToKey (uint16_t group, uint16_t elem)
 concatenates 2 uint16_t (supposed to be a Dicom group number and a Dicom element number)

Protected Member Functions

 DictEntry (uint16_t group, uint16_t elem, VRKey const &vr=GDCM_VRUNKNOWN, TagName const &vm=GDCM_UNKNOWN, TagName const &name=GDCM_UNKNOWN)
 Constructor.

Protected Attributes

int PrintLevel
 Amount of printed details for each Dicom Entries : 0 : stands for the least detail level.

Private Member Functions

 gdcmTypeMacro (DictEntry)

Private Attributes

TagName VM
 Value Multiplicity (e.g. "1", "1-n", "2-n", "6").
TagName Name
 English name of the entry (e.g. "Patient's Name").

Detailed Description

the DictEntry in an element contained by the Dict. It contains :

Definition at line 38 of file gdcmDictEntry.h.


Constructor & Destructor Documentation

gdcm::DictEntry::DictEntry uint16_t  group,
uint16_t  elem,
VRKey const &  vr = GDCM_VRUNKNOWN,
TagName const &  vm = GDCM_UNKNOWN,
TagName const &  name = GDCM_UNKNOWN
[protected]
 

Constructor.

Parameters:
group DICOM-Group Number
elem DICOM-Element Number
vr Value Representation
vm Value Multiplicity
name description of the element

Definition at line 39 of file gdcmDictEntry.cxx.

References Name, and VM.

Referenced by New().

00042                                          :
00043    DicomEntry(group,elem,vr)
00044 {
00045    VM      = vm;
00046    Name    = name;
00047 }


Member Function Documentation

void gdcm::RefCounter::Delete  )  [inline, inherited]
 

Delete the object.

Remarks:
The object is deleted only if its reference counting is to zero

Definition at line 40 of file gdcmRefCounter.h.

Referenced by gdcm::SerieHelper::AddFileName(), gdcm::Document::Backtrack(), gdcm::FileHelper::CheckMandatoryElements(), gdcm::FileHelper::CheckMandatoryEntry(), gdcm::FileHelper::CopyMandatoryEntry(), gdcm::DicomDir::CreateDicomDirChainedList(), gdcm::File::DoTheLoadingJob(), gdcm::Dict::DoTheLoadingJob(), gdcm::DicomDirObject::FillObject(), gdcm::DocEntrySet::InsertEntryBinArea(), gdcm::DocEntrySet::InsertEntryString(), gdcm::DocEntrySet::InsertSeqEntry(), gdcm::DicomDir::NewMeta(), gdcm::DicomDirStudy::NewVisit(), gdcm::Document::ParseDES(), gdcm::Document::ParseSQ(), gdcm::Document::ReadNextDocEntry(), gdcm::DicomDir::SetElement(), gdcm::FileHelper::SetMandatoryEntry(), gdcm::FileHelper::SetWriteFileTypeToExplicitVR(), gdcm::FileHelper::SetWriteFileTypeToImplicitVR(), gdcm::FileHelper::SetWriteFileTypeToJPEG(), gdcm::FileHelper::SetWriteToLibido(), gdcm::FileHelper::SetWriteToNoLibido(), gdcm::FileHelper::SetWriteToRaw(), gdcm::FileHelper::SetWriteToRGB(), gdcm::DicomDir::~DicomDir(), and gdcm::Global::~Global().

00040 { Unregister(); }

gdcm::DictEntry::gdcmTypeMacro DictEntry   )  [private]
 

const uint16_t& gdcm::DicomEntry::GetElement  )  const [inline, inherited]
 

Returns the Dicom Element Number.

Returns:
the Dicom Element Number

Definition at line 56 of file gdcmDicomEntry.h.

Referenced by gdcm::DocEntryArchive::Push().

00056 { return Tag[1]; }

const uint16_t& gdcm::DicomEntry::GetGroup  )  const [inline, inherited]
 

Returns the Dicom Group Number.

Returns:
the Dicom Group Number

Definition at line 52 of file gdcmDicomEntry.h.

Referenced by gdcm::DocEntryArchive::Push().

00052 { return Tag[0]; }

const TagKey& gdcm::DicomEntry::GetKey  )  const [inline, inherited]
 

Definition at line 68 of file gdcmDicomEntry.h.

Referenced by gdcm::Dict::AddEntry(), gdcm::DicomEntry::Print(), and gdcm::Dict::ReplaceEntry().

00068 { return Tag; }

const TagName& gdcm::DictEntry::GetName  )  const [inline]
 

Returns the Dicom Name of the current DictEntry e.g. "Patient Name" for Dicom Tag (0x0010, 0x0010).

Returns:
the Dicom Name

Definition at line 65 of file gdcmDictEntry.h.

Referenced by Print().

00065 { return Name; } 

int gdcm::Base::GetPrintLevel  )  [inline, inherited]
 

Gets the print level for the Dicom Entries.

Definition at line 50 of file gdcmBase.h.

00050 { return PrintLevel; }

const unsigned long& gdcm::RefCounter::GetRefCount  )  const [inline, inherited]
 

Get the reference counting.

Returns:
Reference count

Definition at line 57 of file gdcmRefCounter.h.

00058    {
00059       return RefCount;
00060    }

const TagName& gdcm::DictEntry::GetVM  )  const [inline]
 

returns the VM field of the current DictEntry

Returns:
The 'Value Multiplicity' field

Definition at line 56 of file gdcmDictEntry.h.

00056 { return VM; } 

const VRKey& gdcm::DicomEntry::GetVR  )  const [inline, inherited]
 

Returns the Dicom Value Representation.

Returns:
the Dicom Value Representation

Definition at line 63 of file gdcmDicomEntry.h.

Referenced by gdcm::DocEntrySet::GetDictEntry(), and gdcm::Document::ReadNextDocEntry().

00063 { return VR; }

bool gdcm::DictEntry::IsVMUnknown  )  const [inline]
 

tells if the V(alue) M(ultiplicity) is known (?!)

Returns:

Definition at line 60 of file gdcmDictEntry.h.

References gdcm::GDCM_UNKNOWN.

Referenced by SetVM().

00060 { return VM == GDCM_UNKNOWN; }

bool gdcm::DicomEntry::IsVRUnknown  )  const [inline, inherited]
 

tells if the V(alue) R(epresentation) is known (?!)

Returns:

Definition at line 66 of file gdcmDicomEntry.h.

References gdcm::GDCM_VRUNKNOWN.

Referenced by SetVR().

00066 { return VR == GDCM_VRUNKNOWN; }

DictEntry * gdcm::DictEntry::New uint16_t  group,
uint16_t  elem,
VRKey const &  vr = GDCM_VRUNKNOWN,
TagName const &  vm = GDCM_UNKNOWN,
TagName const &  name = GDCM_UNKNOWN
[static]
 

Class allocator.

Parameters:
group DICOM-Group Number
elem DICOM-Element Number
vr Value Representation
vm Value Multiplicity
name description of the element

Definition at line 59 of file gdcmDictEntry.cxx.

References DictEntry().

Referenced by gdcm::File::DoTheLoadingJob(), gdcm::Dict::DoTheLoadingJob(), and gdcm::DocEntrySet::GetDictEntry().

00063 {
00064    return new DictEntry(group,elem,vr,vm,name);
00065 }

void gdcm::DictEntry::Print std::ostream &  os = std::cout,
std::string const &  indent = ""
[virtual]
 

Prints an entry of the Dicom DictionaryEntry.

Parameters:
os ostream we want to print in
indent Indentation string to be prepended during printing

Reimplemented from gdcm::DicomEntry.

Definition at line 114 of file gdcmDictEntry.cxx.

References GetName(), gdcm::DicomEntry::Print(), and gdcm::Base::PrintLevel.

00115 {
00116    DicomEntry::Print(os,indent);
00117 
00118    std::ostringstream s;
00119 
00120    if ( PrintLevel >= 1 )
00121    {
00122       s.setf(std::ios::left);
00123       s << std::setw(66-GetName().length()) << " ";
00124    }
00125 
00126    s << "[" << GetName()<< "]";
00127    os << s.str() << std::endl;
00128 }

void gdcm::RefCounter::Register  )  [inline, inherited]
 

Register the object.

Remarks:
It increments the reference counting

Definition at line 45 of file gdcmRefCounter.h.

Referenced by gdcm::SQItem::AddEntry(), gdcm::ElementSet::AddEntry(), gdcm::Dict::AddEntry(), gdcm::SeqEntry::AddSQItem(), gdcm::DocEntry::DocEntry(), gdcm::FileHelper::FileHelper(), gdcm::DocEntrySet::GetDictEntry(), gdcm::DocEntryArchive::Push(), gdcm::Dict::ReplaceEntry(), and gdcm::SeqEntry::SetDelimitationItem().

00045 { RefCount++; }

void gdcm::Base::SetPrintLevel int  level  )  [inline, inherited]
 

Sets the print level for the Dicom Header Elements.

Note:
0 for Light Print; 1 for 'medium' Print, 2 for Heavy Print

Definition at line 47 of file gdcmBase.h.

Referenced by gdcm::SQItem::Print(), gdcm::SeqEntry::Print(), gdcm::FileHelper::Print(), gdcm::ElementSet::Print(), and gdcm::DicomDir::Print().

00047 { PrintLevel = level; }

void gdcm::DictEntry::SetVM TagName const &  vm  )  [virtual]
 

If-and only if-the V(alue) M(ultiplicity) \ is unset then overwrite it.

Parameters:
vm New V(alue) M(ultiplicity) to be set.

Definition at line 89 of file gdcmDictEntry.cxx.

References gdcmErrorMacro, IsVMUnknown(), and VM.

00090 {
00091    if ( IsVMUnknown() )
00092    {
00093       VM = vm;
00094    }
00095    else 
00096    {
00097       gdcmErrorMacro( "Overwriting VM might compromise a dictionary");
00098    }
00099 }

void gdcm::DictEntry::SetVR VRKey const &  vr  )  [virtual]
 

If-and only if-the V(alue) R(epresentation) \ is unset then overwrite it.

Parameters:
vr New V(alue) R(epresentation) to be set.

Reimplemented from gdcm::DicomEntry.

Definition at line 72 of file gdcmDictEntry.cxx.

References gdcmErrorMacro, gdcm::DicomEntry::IsVRUnknown(), and gdcm::DicomEntry::SetVR().

00073 {
00074    if ( IsVRUnknown() )
00075    {
00076       DicomEntry::SetVR(vr);
00077    }
00078    else 
00079    {
00080       gdcmErrorMacro( "Overwriting VR might compromise a dictionary");
00081    }
00082 }

TagKey gdcm::DicomEntry::TranslateToKey uint16_t  group,
uint16_t  elem
[static, inherited]
 

concatenates 2 uint16_t (supposed to be a Dicom group number and a Dicom element number)

Parameters:
group the Dicom group number used to build the tag
elem the Dicom element number used to build the tag
Returns:
the built tag

Definition at line 61 of file gdcmDicomEntry.cxx.

Referenced by gdcm::ElementSet::GetDocEntry(), gdcm::Dict::GetEntry(), gdcm::DocEntry::Print(), gdcm::DicomDirElement::Print(), gdcm::DocEntryArchive::Push(), gdcm::File::ReadTag(), gdcm::File::ReadTagLength(), gdcm::Dict::RemoveEntry(), and gdcm::DocEntryArchive::Restore().

00062 {
00063    // according to 'Purify', TranslateToKey is one of the most
00064    // time consuming methods.
00065    // Let's try to shorten it !
00066    return TagKey(group,elem);
00067 }

void gdcm::RefCounter::Unregister  )  [inline, inherited]
 

Unregister the object.

Remarks:
It decrements the reference counting

Definition at line 49 of file gdcmRefCounter.h.

Referenced by gdcm::SeqEntry::ClearSQItem(), gdcm::DocEntrySet::GetDictEntry(), gdcm::DocEntrySet::NewDataEntry(), gdcm::DocEntrySet::NewSeqEntry(), gdcm::Document::ReadNextDocEntry(), gdcm::SQItem::RemoveEntry(), gdcm::ElementSet::RemoveEntry(), gdcm::SeqEntry::SetDelimitationItem(), gdcm::DocEntry::~DocEntry(), and gdcm::FileHelper::~FileHelper().

00050    {
00051       RefCount--;
00052       if(RefCount<=0)
00053          delete this;
00054    }


Member Data Documentation

TagName gdcm::DictEntry::Name [private]
 

English name of the entry (e.g. "Patient's Name").

Definition at line 78 of file gdcmDictEntry.h.

Referenced by DictEntry().

int gdcm::Base::PrintLevel [protected, inherited]
 

Amount of printed details for each Dicom Entries : 0 : stands for the least detail level.

Definition at line 55 of file gdcmBase.h.

Referenced by gdcm::SQItem::Print(), gdcm::SeqEntry::Print(), gdcm::FileHelper::Print(), gdcm::ElementSet::Print(), gdcm::DocEntry::Print(), Print(), gdcm::DicomDirStudy::Print(), gdcm::DicomDirSerie::Print(), gdcm::DicomDirPatient::Print(), gdcm::DicomDirMeta::Print(), gdcm::DicomDir::Print(), and gdcm::DataEntry::Print().

TagName gdcm::DictEntry::VM [private]
 

Value Multiplicity (e.g. "1", "1-n", "2-n", "6").

Definition at line 75 of file gdcmDictEntry.h.

Referenced by DictEntry(), and SetVM().


The documentation for this class was generated from the following files:
Generated on Fri Nov 18 15:58:23 2005 for gdcm by  doxygen 1.4.4