Program: gdcm
Module: $RCSfile: gdcmDocEntrySet.cxx,v $
Language: C++
- Date: $Date: 2005/01/25 15:44:23 $
- Version: $Revision: 1.45 $
+ Date: $Date: 2005/02/01 10:29:55 $
+ Version: $Revision: 1.50 $
Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
l'Image). All rights reserved. See Doc/License.txt or
namespace gdcm
{
+//-----------------------------------------------------------------------------
+// Constructor / Destructor
//-----------------------------------------------------------------------------
// Public
/**
- * \brief Get the (std::string representable) value of the Dicom entry
+ * \brief Get the "std::string representable" value of the Dicom entry
* @param group Group number of the searched tag.
* @param elem Element number of the searched tag.
* @return Corresponding element value when it exists,
*/
std::string DocEntrySet::GetEntryValue(uint16_t group, uint16_t elem)
{
- ValEntry *entry = GetValEntry(group,elem);
+ ContentEntry *entry = dynamic_cast<ContentEntry *>(GetDocEntry(group,elem));
if( entry )
return entry->GetValue();
return GDCM_UNFOUND;
/**
* \brief Gets (from Header) a 'non string' element value
- * (LoadElementValues has already be executed)
* @param group group number of the Entry
* @param elem element number of the Entry
* @return Pointer to the 'non string' area
/**
* \brief Searches within Header Entries (Dicom Elements) parsed with
- * the public and private dictionaries
+ * the public [and private dictionaries]
* for the element value representation of a given tag..
* Obtaining the VR (Value Representation) might be needed by caller
* to convert the string typed content to caller's native type
* \brief Same as \ref Document::GetDocEntry except it only
* returns a result when the corresponding entry is of type
* BinEntry.
- * @param group Group number of the searched Dicom Element
- * @param elem Element number of the searched Dicom Element
+ * @param group Group number of the searched Dicom Element
+ * @param elem Element number of the searched Dicom Element
* @return When present, the corresponding BinEntry.
*/
BinEntry *DocEntrySet::GetBinEntry(uint16_t group, uint16_t elem)
{
DocEntry *currentEntry = GetDocEntry(group, elem);
if ( !currentEntry )
+ {
+ gdcmVerboseMacro( "No corresponding BinEntry " << std::hex << group <<
+ "," << elem);
return NULL;
+ }
return dynamic_cast<BinEntry*>(currentEntry);
}
{
DocEntry *currentEntry = GetDocEntry(group, elem);
if ( !currentEntry )
+ {
+ gdcmVerboseMacro( "No corresponding SeqEntry " << std::hex << group <<
+ "," << elem);
return NULL;
+ }
return dynamic_cast<SeqEntry*>(currentEntry);
}
ValEntry *entry = GetValEntry(group, elem);
if (!entry )
{
- gdcmVerboseMacro( "No corresponding ValEntry (try promotion first).");
+ gdcmVerboseMacro( "No corresponding ValEntry " << std::hex << group <<
+ "," << elem << " element (try promotion first).");
return false;
}
return SetValEntry(content,entry);
* @param group group number of the Dicom Element to modify
* @param elem element number of the Dicom Element to modify
*/
-bool DocEntrySet::SetBinEntry(uint8_t*content, int lgth,
+bool DocEntrySet::SetBinEntry(uint8_t *content, int lgth,
uint16_t group, uint16_t elem)
{
BinEntry *entry = GetBinEntry(group, elem);
if (!entry )
{
- gdcmVerboseMacro( "No corresponding ValEntry (try promotion first).");
+ gdcmVerboseMacro( "No corresponding ValEntry " << std::hex << group <<
+ "," << elem << " element (try promotion first).");
return false;
}
return Global::GetDicts()->NewVirtualDictEntry(group,elem,vr,vm,name);
}
-//-----------------------------------------------------------------------------
-// Protected
/**
* \brief Build a new Val Entry from all the low level arguments.
* Check for existence of dictionary entry, and build
return newEntry;
}
+//-----------------------------------------------------------------------------
+// Protected
/**
* \brief Searches [both] the public [and the shadow dictionary (when they
* exist)] for the presence of the DictEntry with given
return found;
}
-
/**
- * \brief Searches both the public and the shadow dictionary (when they
- * exist) for the presence of the DictEntry with given
+ * \brief Searches [both] the public [and the shadow dictionary (when they
+ * exist)] for the presence of the DictEntry with given
* group and element, and create a new virtual DictEntry if necessary
* @param group group number of the searched DictEntry
* @param elem element number of the searched DictEntry
//-----------------------------------------------------------------------------
// Private
+//-----------------------------------------------------------------------------
+// Print
+
//-----------------------------------------------------------------------------
} // end namespace gdcm