#endif
#include <iomanip> // for std::ios::left, ...
+
+#define MAX_SIZE_PRINT_ELEMENT_VALUE 10000
+
//-----------------------------------------------------------------------------
// Constructor / Destructor
/**
d2 = _CreateCleanString(v); // replace non printable characters by '.'
if (printLevel>=2) {
s << "lg : ";
- lgth = GetReadLength();
+ lgth = GetReadLength(); // ReadLength, as opposed to UsableLength
if (lgth == 0xffffffff) {
sprintf(st,"x(ffff)"); // I said : "x(ffff)" !
s.setf(std::ios::left);
if (printLevel>=1) {
s.setf(std::ios::left);
s << std::setw(66-GetName().length()) << " ";
- }
+ }
+
+ s << "[" << GetName()<< "]";
+
- s << "[" << GetName()<< "]";
- s << " [" << d2 << "]";
+
+ if( (GetLength()<MAX_SIZE_PRINT_ELEMENT_VALUE) ||
+ (printLevel>=3) ||
+ (d2.find("gdcm::NotLoaded.") < d2.length()) )
+ s << " [" << d2 << "]";
+ else
+ s << " [ gdcm::too long for print (" << GetLength() << ") ]";
// Display the UID value (instead of displaying the rough code)
if (g == 0x0002) { // Any more to be displayed ?
if (g == 0x0008) {
if ( (e == 0x0016) || (e == 0x1150) )
s << " ==>\t[" << ts->GetValue(v) << "]";
+ } else {
+ if (g == 0x0004) {
+ if ( (e == 0x1510) || (e == 0x1512) )
+ s << " ==>\t[" << ts->GetValue(v) << "]";
+ }
}
}
//if (e == 0x0000) { // elem 0x0000 --> group length
if (v == "4294967295") // to avoid troubles in convertion
sprintf (st," x(ffffffff)");
else
- sprintf(st," x(%x)",atoi(v.c_str()));
+ sprintf(st," x(%x)",(unsigned long)atof(v.c_str()));
s << st;
}
s << std::endl;