D3PD::RootReaderD3PD_v2 Node1 D3PD::RootReaderD3PD_v2 + RootReaderD3PD_v2() + createReader() Node2 D3PD::RootReaderD3PDBase + RootReaderD3PDBase() + addVariable() + addDimensionedVariable() + addMetadata() + capture() + clear() + redim() + setIsContainer() + isContainer() + setPrefix() + prefix() # addSTLHeader() Node2->Node1 Node3 D3PD::IReaderD3PD + ~IReaderD3PD() + setIsContainer() + isContainer() + setPrefix() + prefix() + createReader() Node3->Node2 Node4 D3PD::ID3PD + capture() + clear() + redim() + addMetadata() + addMetadata() Node4->Node3 Node5 D3PD::IAddVariable + ~IAddVariable() + addVariable() + addVariable() + addDimensionedVariable() + addDimensionedVariable() + addVariable() + addDimensionedVariable() Node5->Node4 Node6 D3PD::ObjectMetadata + RANDOM_NAME_POSTFIX _LENGTH + STRING_SEPARATOR + SERIALIZER_VERSION # m_container + ObjectMetadata() + ObjectMetadata() + operator=() + operator==() + operator<() + addVariable() + addDimensionedVariable() + name() + setName() + ATLAS_NOT_THREAD_SAFE() and 16 more... + objectName() - ATLAS_NOT_THREAD_SAFE() Node5->Node6 Node6->Node2 #m_metadata Node7 std::string Node7->Node6 #m_name #m_prefix Node10 D3PD::ObjectMetadata ::Variable + STRING_SEPARATOR - m_primitive + Variable() + type() + name() + doc() + primitive() + setType() + setName() + setDoc() + setPrimitive() + toString() + read() + operator==() + operator<() Node7->Node10 -m_doc -m_type -m_name Node8 std::basic_string< char > Node8->Node7 Node9 std::set< D3PD::ObjectMetadata ::Variable > Node9->Node6 #m_variables Node10->Node9 +keys