00001 #ifndef RECOCALOTOOLS_SELECTORS_CALODUALCONESELECTOR_H 00002 #define RECOCALOTOOLS_SELECTORS_CALODUALCONESELECTOR_H 1 00003 00004 #include "Geometry/CaloGeometry/interface/CaloGeometry.h" 00005 #include "RecoCaloTools/MetaCollections/interface/CaloRecHitMetaCollectionV.h" 00006 #include <memory> 00007 00014 class CaloDualConeSelector { 00015 public: 00016 CaloDualConeSelector(double dRmin, double dRmax, const CaloGeometry* geom); 00017 CaloDualConeSelector(double dRmin, double dRmax, const CaloGeometry* geom, DetId::Detector detector, int subdet=0); 00018 00019 std::auto_ptr<CaloRecHitMetaCollectionV> select(double eta, double phi, const CaloRecHitMetaCollectionV& inputCollection); 00020 std::auto_ptr<CaloRecHitMetaCollectionV> select(const GlobalPoint& p, const CaloRecHitMetaCollectionV& inputCollection); 00021 private: 00022 const CaloGeometry* geom_; 00023 double deltaRmin_,deltaRmax_; 00024 DetId::Detector detector_; 00025 int subdet_; 00026 }; 00027 00028 #endif