CMS 3D CMS Logo

/data/doxygen/doxygen-1.7.3/gen/CMSSW_4_2_8/src/SimCalorimetry/HcalSimAlgos/interface/HFHitFilter.h

Go to the documentation of this file.
00001 #ifndef HcalSimAlgos_HFHitFilter_h
00002 #define HcalSimAlgos_HFHitFilter_h
00003 
00004 #include "SimCalorimetry/CaloSimAlgos/interface/CaloVHitFilter.h"
00005 #include "DataFormats/HcalDetId/interface/HcalSubdetector.h"
00006 #include "DataFormats/HcalDetId/interface/HcalDetId.h"
00007 
00008 #include <iostream>
00009 
00010 class HFHitFilter : public CaloVHitFilter {
00011   public:
00012   HFHitFilter(bool doHFWindow): doHFWindow_(doHFWindow) {}
00013 
00014   virtual bool accepts(const PCaloHit & hit) const {
00015     HcalDetId hcalDetId(hit.id());
00016     bool ok1 = hcalDetId.subdet() == HcalForward;
00017     // might not want depth=1
00018     //if(ok1) std::cout << " HF " << hcalDetId.subdet() << " " << doHFWindow_ << " DEPTH " << hit.depth() << std::endl;
00019     bool ok2 = doHFWindow_ || hit.depth()==0;
00020     return ok1 && ok2;
00021   }
00022 private:
00023   bool doHFWindow_;
00024 };
00025 
00026 #endif
00027