![]() |
![]() |
00001 00002 // File: CaloSlaveSD.h 00003 // Date: 10.02 00004 // Description: Interfaces CaloHit to appropriate container for ORCA usage 00006 #ifndef CaloSlaveSD_h 00007 #define CaloSlaveSD_h 00008 00009 #include "SimDataFormats/CaloHit/interface/PCaloHit.h" 00010 #include "SimDataFormats/CaloHit/interface/PCaloHitContainer.h" 00011 #include "FWCore/MessageLogger/interface/MessageLogger.h" 00012 00013 #include <string> 00014 #include <vector> 00015 00016 class CaloSlaveSD { 00017 00018 public: 00019 typedef std::vector<PCaloHit> Collection; 00020 typedef Collection::iterator iterator; 00021 typedef Collection::const_iterator const_iterator; 00022 00023 CaloSlaveSD(std::string); 00024 virtual ~CaloSlaveSD(); 00025 virtual void Initialize(); 00026 std::string name() const { return name_; } 00027 virtual bool processHits(uint32_t, double, double, double, int, uint16_t depth=0); 00028 virtual bool format(); 00029 Collection& hits() { return hits_; } 00030 std::string type() { return "calo"; } 00031 virtual const_iterator begin() { return hits_.begin();} 00032 virtual const_iterator end() { return hits_.end();} 00033 00034 protected: 00035 Collection hits_; 00036 00037 private: 00038 std::string name_; 00039 }; 00040 00041 #endif // CaloSlaveSD_h