218 unsigned int iAcceptedTriggers( 0 );
228 for (
unsigned int itrig( 0 ); itrig < n_TriggerResults; ++itrig )
239 new((*acceptedTriggers)[iAcceptedTriggers]) TObjString( (triggerNames.
triggerName( itrig )).c_str() );
256 const HepMC::GenEvent* Evt =
EvtHandle->GetEvent() ;
260 std::vector<math::XYZTLorentzVector> GenPart;
261 std::vector<GenJet> ChgGenJetContainer;
262 std::vector<GenJet> GenJetContainer;
265 ChgGenJetContainer.clear();
266 GenJetContainer.clear();
277 ChgGenJetContainer.push_back(*it);
280 std::stable_sort(ChgGenJetContainer.begin(),ChgGenJetContainer.end(),
GenJetSort());
282 std::vector<GenJet>::const_iterator it(ChgGenJetContainer.begin()), itEnd(ChgGenJetContainer.end());
283 for (
int iChargedJet(0); it != itEnd; ++it, ++iChargedJet)
286 new((*ChargedJet)[iChargedJet]) TLorentzVector(it->px(), it->py(), it->pz(), it->energy());
297 GenJetContainer.push_back(*it);
300 std::stable_sort(GenJetContainer.begin(),GenJetContainer.end(),
GenJetSort());
302 std::vector<GenJet>::const_iterator it(GenJetContainer.begin()), itEnd(GenJetContainer.end());
303 for (
int iInclusiveJet(0); it != itEnd; ++it, ++iInclusiveJet)
306 new((*InclusiveJet)[iInclusiveJet]) TLorentzVector(it->px(), it->py(), it->pz(), it->energy());
317 GenPart.push_back(it->p4());
320 std::stable_sort(GenPart.begin(),GenPart.end(),
GreaterPt());
322 std::vector<math::XYZTLorentzVector>::const_iterator it(GenPart.begin()), itEnd(GenPart.end());
323 for(
int iMonteCarlo(0); it != itEnd; ++it, ++iMonteCarlo )
326 new((*MonteCarlo)[iMonteCarlo]) TLorentzVector(it->Px(), it->Py(), it->Pz(), it->E());
339 std::vector<math::XYZTLorentzVector> Tracks;
340 std::vector<BasicJet> TracksJetContainer;
341 std::vector<CaloJet> RecoCaloJetContainer;
344 TracksJetContainer.clear();
345 RecoCaloJetContainer.clear();
356 RecoCaloJetContainer.push_back(*it);
358 std::stable_sort(RecoCaloJetContainer.begin(),RecoCaloJetContainer.end(),
CaloJetSort());
360 std::vector<CaloJet>::const_iterator it(RecoCaloJetContainer.begin()), itEnd(RecoCaloJetContainer.end());
361 for(
int iCalorimeterJet(0); it != itEnd; ++it, ++iCalorimeterJet)
364 new((*CalorimeterJet)[iCalorimeterJet]) TLorentzVector(it->px(), it->py(), it->pz(), it->energy());
373 TracksJetContainer.push_back(*it);
375 std::stable_sort(TracksJetContainer.begin(),TracksJetContainer.end(),
BasicJetSort());
377 std::vector<BasicJet>::const_iterator it(TracksJetContainer.begin()), itEnd(TracksJetContainer.end());
378 for(
int iTracksJet(0); it != itEnd; ++it, ++iTracksJet)
381 new((*TracksJet)[iTracksJet]) TLorentzVector(it->px(), it->py(), it->pz(), it->energy());
390 Tracks.push_back(it->p4());
392 std::stable_sort(Tracks.begin(),Tracks.end(),
GreaterPt());
394 std::vector<math::XYZTLorentzVector>::const_iterator it( Tracks.begin()), itEnd(Tracks.end());
395 for(
int iTracks(0); it != itEnd; ++it, ++iTracks)
397 fillTracks(it->P(),it->Pt(),it->Eta(),it->Phi());
398 new ((*Track)[iTracks]) TLorentzVector(it->Px(), it->Py(), it->Pz(), it->E());
TClonesArray * ChargedJet
TClonesArray * CalorimeterJet
edm::InputTag chgJetCollName
edm::Handle< reco::GenJetCollection > GenJetsHandle
virtual edm::TriggerNames const & triggerNames(edm::TriggerResults const &triggerResults) const
void fillTracks(float, float, float, float)
edm::Handle< reco::GenJetCollection > ChgGenJetsHandle
void fillTracksJet(float, float, float, float)
edm::InputTag recoCaloJetCollName
void fillChargedJet(float, float, float, float)
void fillInclusiveJet(float, float, float, float)
TClonesArray * acceptedTriggers
edm::Handle< edm::TriggerResults > triggerResults
edm::InputTag tracksJetCollName
edm::Handle< edm::HepMCProduct > EvtHandle
TClonesArray * InclusiveJet
bool getByLabel(InputTag const &tag, Handle< PROD > &result) const
edm::InputTag triggerResultsTag
void fillCaloJet(float, float, float, float)
edm::Handle< std::vector< reco::GenParticle > > CandHandleMC
std::string const & triggerName(unsigned int index) const
T const * product() const
edm::Handle< reco::CandidateCollection > CandHandleRECO
edm::InputTag genJetCollName
edm::Handle< reco::BasicJetCollection > TracksJetsHandle
edm::InputTag tracksCollName
edm::Handle< reco::CaloJetCollection > RecoCaloJetsHandle
void fillMCParticles(float, float, float, float)
TClonesArray * MonteCarlo
edm::InputTag chgGenPartCollName