1 #ifndef EventFilter_EcalRawToRecHitRoI_H
2 #define EventFilter_EcalRawToRecHitRoI_H
94 const EmJobPSet & ejpset,
96 std::vector<int> &
FEDs);
125 std::vector<int> & feds);
146 std::vector<int> & feds);
155 void ListOfFEDS(
double etaLow,
double etaHigh,
double phiLow,
156 double phiHigh,
double etamargin,
double phimargin,
157 std::vector<int>&
FEDs);
162 std::vector<int>::iterator n_end = std::unique(FEDs.begin(),FEDs.end());
163 FEDs.erase(n_end,FEDs.end());}
170 std::vector<int> & feds){
180 typename CollectionType::const_iterator it = candColl->begin();
181 typename CollectionType::const_iterator
end= candColl->end();
192 for (; it!=
end;++it){
193 double pt = it->pt();
194 double eta = it->eta();
195 double phi = it->phi();
201 if (
point.mag()==0 && vector.mag()==0){
202 edm::LogWarning(
"IncorrectRecHit")<<
" state of candidate is not valid. skipping.";
210 vector=out.globalMomentum();
211 point=out.globalPosition();
217 else{
edm::LogWarning(
"IncorrectRecHit")<<
"I tried to be precise, but propagation failed. from:\n"<<fts;
221 LogDebug(category)<<
" here is a candidate Seed with (eta,phi) = "
222 <<eta <<
" " << phi <<
" and pt " << pt;
223 if (pt < cjpset.
Ptmin)
continue;
JetJobPSet(edm::ParameterSet &cfg)
bool Candidate_
Candidate-versatile objects part flag.
void OneCandCollection(const edm::Event &e, const edm::EventSetup &es, const CandJobPSet &cjpset, std::vector< int > &feds)
process one collection of Candidate-versatile objects
void Cand(edm::Event &e, const edm::EventSetup &es, std::vector< int > &FEDs)
T getParameter(std::string const &) const
class to drive the job on L1Jet
edm::RefGetter< EcalRecHit > EcalRecHitRefGetter
void unique(std::vector< int > &FEDs)
remove duplicates
MuJobPSet MuonSource_
what drives the job from ONE L1Muon collection
EmJobPSet(edm::ParameterSet &cfg)
const ESElectronicsMapper * TheESMapping
class to drive the job on Candidate-inheriting object
bool Muon_
Muon part flag.
CalUnpackJobPSet(edm::ParameterSet &cfg)
std::vector< JetJobPSet > JetSource_
what drive the job on L1Jet collection
std::string dumpFEDs(const std::vector< int > &FEDs)
void Jet(edm::Event &e, const edm::EventSetup &es, std::vector< int > &FEDs)
edm::LazyGetter< EcalRecHit > EcalRecHitLazyGetter
std::vector< EmJobPSet > EmSource_
what drive the job on L1Em collection
void Muon(edm::Event &e, const edm::EventSetup &es, std::vector< int > &FEDs)
const EcalElectronicsMapping * TheMapping
tools
generic class to drive the job
edm::InputTag sourceTag_es_
std::vector< CandJobPSet > CandSource_
what drives the job from candidate
class to drive the job on L1Em
void ListOfFEDS(double etaLow, double etaHigh, double phiLow, double phiHigh, double etamargin, double phimargin, std::vector< int > &FEDs)
actually fill the vector with FED numbers
std::string propagatorNameToBePrecise
virtual ~EcalRawToRecHitRoI()
bool getByLabel(InputTag const &tag, Handle< PROD > &result) const
void Egamma_OneL1EmCollection(const edm::Handle< l1extra::L1EmParticleCollection > emColl, const EmJobPSet &ejpset, const edm::ESHandle< L1CaloGeometry > &l1CaloGeom, std::vector< int > &FEDs)
process one collection of L1Em
class to drive the job on L1Muon
edm::InputTag sourceTag_
input tag for the lazy getter
T const * product() const
void produce(edm::Event &e, const edm::EventSetup &c)
bool All_
if all need to be done
void Egamma(edm::Event &e, const edm::EventSetup &es, std::vector< int > &FEDs)
bool EGamma_
Egamma part flag.
CandJobPSet(edm::ParameterSet &cfg)
MuJobPSet(edm::ParameterSet &cfg)
*vegas h *****************************************************used in the default bin number in original ***version of VEGAS is ***a higher bin number might help to derive a more precise ***grade subtle point
EcalRawToRecHitRoI(const edm::ParameterSet &pset)
void Jet_OneL1JetCollection(const edm::Handle< l1extra::L1JetParticleCollection > jetColl, const JetJobPSet &jjpset, std::vector< int > &feds)
process on collection of L1Jets