00001 #ifndef DDRoot_h 00002 #define DDRoot_h 00003 00004 #include "DetectorDescription/Core/interface/DDLogicalPart.h" 00005 #include "DetectorDescription/Base/interface/Singleton.h" 00006 00008 00014 class DDRoot 00015 { 00016 friend class DDI::Singleton<DDRoot>; //FIXME: should not be, because DDSingleton inherits from DDRoot! 00017 public: 00019 void set(const DDName & rootName); 00020 00022 void set(const DDLogicalPart & root); 00023 00025 DDLogicalPart root() const; 00026 //const DDLogicalPart & root() const; 00027 protected: 00028 DDRoot(); 00029 ~DDRoot(); 00030 private: 00031 DDLogicalPart root_; 00032 }; 00033 00034 typedef DDI::Singleton<DDRoot> DDRootDef; 00035 #endif