MuonGM::Mdt Node1 MuonGM::Mdt + width + length + thickness + longWidth + index + tubelenStepSize + tubePitch + Mdt() + build() + build() + processCutouts() + print() Node2 MuonGM::DetectorElement + DetectorElement() + setLogVolName() + print() + ~DetectorElement() Node2->Node1 Node9 MuonGM::MultiLayer + nrOfLayers + nrOfTubes + tubePitch + width + length + thickness + mdtthickness + longWidth + nrOfSteps + cutoutNsteps + cutoutAtAngle + MultiLayer() + build() + print() Node2->Node9 Node3 std::string Node3->Node2 +name +logVolName Node7 MuonGM::Component + dx1 + dx2 + dy + Component() + Component() + operator=() + ~Component() + GetThickness() Node3->Node7 +name Node4 std::basic_string< char > Node4->Node3 Node5 MuonGM::MdtComponent + tubelenStepSize + cutoutTubeXShift + MdtComponent() Node5->Node1 -m_component Node6 MuonGM::StandardComponent + posx + posy + posz + deadx + deady + dead3 + excent + iswap + index + StandardComponent() + GetThickness() Node6->Node5 Node7->Node6 Node8 std::unique_ptr< MuonGM ::MultiLayer > + operator->() Node8->Node1 +layer Node9->Node8 +ptr Node10 std::array< int, 5 > + elements Node10->Node9 +cutoutNtubes