gdcm::DataSet * pDataSet = ... ;
const gdcm::DataElement & de = pDataSet->GetDataElement( sequenceTag );
gdcm::SmartPointer<gdcm::sequenceofitems> pCodeSeq = de.GetValueAsSQ();
if sequence is empty pCodeSeq = nullptr ;
Here is the data element :
- de {TagField={...} ValueLengthField={...} VRField={...} ...} const gdcm::DataElement &
- TagField {ElementTag={...} } gdcm::Tag
- ElementTag {tag=0x02220054 tags=0x0000000010a51298 "TȢ" bytes=0x0000000010a51298 "T" } gdcm::Tag::<unnamed-type-elementtag>
tag 0x02220054 unsigned int
- tags 0x0000000010a51298 "TȢ" unsigned short [2]
[0x0] 0x0054 unsigned short
[0x1] 0x0222 unsigned short
+ bytes 0x0000000010a51298 "T" char [4]
+ ValueLengthField {ValueLength=0x00000000 } gdcm::VL
+ VRField {VRField=SQ } gdcm::VR
+ ValueField {Pointer=0x0000000000000000 } gdcm::SmartPointer<gdcm::value></gdcm::value></unnamed-type-elementtag></gdcm::sequenceofitems>
Need to sync behavior with ByteValue