CMS 3D CMS Logo

/afs/cern.ch/work/a/aaltunda/public/www/CMSSW_6_2_7/src/SimCalorimetry/CastorSim/src/CastorCoderFactory.h

Go to the documentation of this file.
00001 #ifndef CastorSim_CastorCoderFactory_h
00002 #define CastorSim_CastorCoderFactory_h
00003 
00004 #include <memory>
00005 #include "CalibFormats/CastorObjects/interface/CastorDbService.h"
00006 #include "CalibFormats/CastorObjects/interface/CastorCoder.h"
00007 
00008 class CastorCoderFactory
00009 {
00010 public:
00011   enum CoderType {DB, NOMINAL};
00012 
00013   CastorCoderFactory(CoderType coderType);
00014 
00015   void setDbService(const CastorDbService * service) {theDbService = service;}
00016 
00018   std::auto_ptr<CastorCoder> coder(const DetId & detId) const;
00019 
00020 private:
00021 
00022   CoderType theCoderType;
00023   const CastorDbService * theDbService;
00024 };
00025 
00026 #endif
00027