+ for (gdcm::TagDocEntryHT::iterator tag = Ht.begin(); tag != Ht.end(); ++tag)
+ {
+ d = tag->second;
+ if ( gdcm::BinEntry* b = dynamic_cast<gdcm::BinEntry*>(d) )
+ {
+ copy->GetHeader()->ReplaceOrCreateByNumber(
+ b->GetBinArea(),
+ b->GetLength(),
+ b->GetGroup(),
+ b->GetElement(),
+ b->GetVR() );
+ }
+ else if ( gdcm::ValEntry* v = dynamic_cast<gdcm::ValEntry*>(d) )
+ {
+ copy->GetHeader()->ReplaceOrCreateByNumber(
+ v->GetValue(),
+ v->GetGroup(),
+ v->GetElement(),
+ v->GetVR() );
+ }
+ else
+ {
+ // We skip pb of SQ recursive exploration
+ //std::cout << "Skipped Sequence "
+ // << "------------- " << d->GetVR() << " "<< std::hex
+ // << d->GetGroup() << " " << d->GetElement()
+ // << std::endl;
+ }
+ }