Main Page | Class Hierarchy | Class List | File List | Class Members

GearMgrImpl.h

00001 #ifndef GEAR_GearMgrImpl_H
00002 #define GEAR_GearMgrImpl_H 1
00003 
00004 #include <string>
00005 
00006 #include "gear/GearMgr.h"
00007 #include "gear/GearParameters.h"
00008 #include "gear/TPCParameters.h"
00009 
00010 
00011 namespace gear {
00012     
00013     
00021   class GearMgrImpl : public GearMgr {
00022         
00023     typedef std::map< std::string ,  GearParameters* > ParameterMap ;
00024 
00025   public: 
00026 
00027     // C'tor 
00028     GearMgrImpl() ;
00029     
00031     virtual ~GearMgrImpl() { /* nop */; }
00032         
00038     virtual const GearParameters & getGearParameters(const std::string & key) const 
00039       throw (UnknownParameterException, std::exception )  ;
00040 
00043     virtual const TPCParameters & getTPCParameters() const
00044       throw (UnknownParameterException, std::exception ) ;
00045     
00050     virtual const CalorimeterParameters & getEcalBarrelParameters() const 
00051         throw (UnknownParameterException, std::exception ) ;
00052 
00057     virtual const CalorimeterParameters & getEcalEndcapParameters() const 
00058         throw (UnknownParameterException, std::exception )  ;
00059 
00064     virtual const CalorimeterParameters & getHcalBarrelParameters() const 
00065         throw (UnknownParameterException, std::exception )  ;
00066 
00071     virtual const CalorimeterParameters & getHcalEndcapParameters() const 
00072         throw (UnknownParameterException, std::exception )  ;
00073 
00078     virtual const GearPointProperties & getPointProperties() const 
00079       throw (NotImplementedException, std::exception ) ;
00080     
00081     
00086     virtual const GearDistanceProperties & getDistanceProperties() const 
00087       throw (NotImplementedException, std::exception ) ;
00088 
00089 
00092     virtual const std::vector<std::string>  & getGearParameterKeys() const ;
00093 
00094 
00098     virtual void setGearParameters( const std::string & key, GearParameters* parameters ) ;
00099     
00102     virtual void setTPCParameters( TPCParameters* tpcParameters ) ;
00103 
00104 
00107     virtual void setEcalBarrelParameters( CalorimeterParameters* ecalBarrelParameters ) ;
00108 
00111     virtual void setEcalEndcapParameters( CalorimeterParameters* ecalEndcapParameters ) ;
00112     
00115     virtual void setHcalBarrelParameters( CalorimeterParameters* hcalBarrelParameters ) ;
00116 
00119     virtual void setHcalEndcapParameters( CalorimeterParameters* hcalEndcapParameters ) ;
00120     
00121 
00124     virtual void  setPointProperties( GearPointProperties* pointProperties) ; 
00125 
00128     virtual void  setDistanceProperties( GearDistanceProperties* distanceProperties) ; 
00129     
00130     
00131     
00132     
00133   protected:
00134     
00135     ParameterMap _map ;
00136     TPCParameters* _tpcParameters ;
00137     CalorimeterParameters* _ecalBarrelParameters ;
00138     CalorimeterParameters* _ecalEndcapParameters ;
00139     CalorimeterParameters* _hcalBarrelParameters ;
00140     CalorimeterParameters* _hcalEndcapParameters ;
00141     GearPointProperties*  _pointProperties ;
00142     GearDistanceProperties*  _distanceProperties ;
00143 
00144     mutable StringVec _keys ;
00145 
00146   }; // class
00147 } // namespace gear
00148 #endif /* ifndef GEAR_GEARMGR_H */

Generated on Tue Sep 13 17:28:48 2005 for Gear by doxygen 1.3.5