32 myKinFitter =
new StKinFitter(jetParam_, lepParam_, metParam_, maxNrIter_, maxDeltaS_, maxF_, constraints_);
35 produces<std::vector<StEvtSolution> >();
50 bool leptonFound =
false;
54 if( muons->size() > 0 ) leptonFound =
true;
59 if( electrons->size() > 0 ) leptonFound =
true;
63 bool metFound =
false;
66 if( mets->size() > 0 ) metFound =
true;
69 bool jetsFound =
false;
72 unsigned int maxJets=2;
73 if (jets->size() >= 2) jetsFound =
true;
75 std::vector<StEvtSolution> *evtsols =
new std::vector<StEvtSolution>();
76 if(leptonFound && metFound && jetsFound){
77 std::cout<<
"constructing solutions"<<std::endl;
78 for (
unsigned int b=0;
b<maxJets;
b++) {
79 for (
unsigned int l=0;
l<maxJets;
l++) {
99 evtsols->push_back(asol);
125 std::unique_ptr<std::vector<StEvtSolution> > pOut(evtsols);
131 std::cout<<
"@@@ No calibrated solutions built, because: " << std::endl;;
132 if(jets->size()<maxJets)
std::cout<<
"@ nr jets = " << jets->size() <<
" < " << maxJets <<std::endl;
135 if(mets->size() == 0)
std::cout<<
"@ no MET reconstruction"<<std::endl;
138 evtsols->push_back(asol);
139 std::unique_ptr<std::vector<StEvtSolution> > pOut(evtsols);
T getParameter(std::string const &) const
OrphanHandle< PROD > put(std::unique_ptr< PROD > product)
Put a new product.
void setMuon(const edm::Handle< std::vector< pat::Muon > > &muon, int i)
StKinFitter * myKinFitter
void setLight(const edm::Handle< std::vector< pat::Jet > > &jet, int i)
bool getByToken(EDGetToken token, Handle< PROD > &result) const
void setNeutrino(const edm::Handle< std::vector< pat::MET > > &met, int i)
std::string leptonFlavour_
edm::EDGetTokenT< std::vector< pat::Jet > > jetSrcToken_
virtual void produce(edm::Event &, const edm::EventSetup &)
std::vector< int > constraints_
edm::EDGetTokenT< std::vector< pat::Muon > > muonSrcToken_
edm::EDGetTokenT< StGenEvent > genEvtSrcToken_
StEvtSolutionMaker(const edm::ParameterSet &)
edm::EDGetTokenT< std::vector< pat::Electron > > electronSrcToken_
edm::EDGetTokenT< std::vector< pat::MET > > metSrcToken_
void setJetCorrectionScheme(int scheme)
void setBottom(const edm::Handle< std::vector< pat::Jet > > &jet, int i)
StEvtSolution addKinFitInfo(StEvtSolution *asol)
void setElectron(const edm::Handle< std::vector< pat::Electron > > &elec, int i)