AGDDPositionerStore Node1 AGDDPositionerStore + AGDDPositionerStore() + RegisterPositioner() + GetPositioner() + NrOfPositioners() Node2 AGDDPositionerVector Node2->Node1 Node3 AGDDPositioner - m_isSensitiveDetector + AGDDPositioner() + ~AGDDPositioner() + Volume() + GetVolume() + Transform() + IsSensitiveDetector() + SensitiveDetector() Node3->Node2 +elements Node10 std::vector< AGDDPositioner * > Node3->Node10 +elements Node4 AGDDVolume # m_theSolid # m_theVolume # m_isSensitive + AGDDVolume() + ~AGDDVolume() + GetName() + SetMaterial() + CreateSolid() + CreateVolume() + AddDaughter() + GetDaughter() + NrOfDaughter() + HasParent() and 10 more... Node4->Node3 -m_theVolume Node6 AGDDVolumeMap Node4->Node6 +elements Node9 std::vector< AGDDVolume * > Node4->Node9 +elements Node5 AGDDVolumeStore + AGDDVolumeStore() + RegisterVolume() + GetVolume() + Exist() + Clean() Node5->Node4 #m_vs Node6->Node5 Node7 std::string Node7->Node3 -m_volume Node7->Node4 #m_name #m_color #m_material Node7->Node6 +keys Node9->Node4 #m_theParents Node10->Node4 #m_theDaughters Node11 Transform3D Node11->Node3 -m_transform