19 #include "Math/Vector3D.h"
79 virtual void endJob()
override ;
121 produces<reco::EvtPlaneCollection>();
123 Int_t FlatOrder = 21;
151 using namespace reco;
159 int bin = *(ch.product());
166 iEvent.
getByToken(vtxCollection_,vertexCollection3);
168 vs_sell = vertices3->size();
170 vzr_sell = vertices3->begin()->z();
171 vzErr_sell = vertices3->begin()->zError();
179 int flatTableSize = flatparmsDB_->m_table.size();
180 for(
int i = 0;
i<flatTableSize;
i++) {
185 flat[indx]->SetXDB(
i, thisBin->
x[
j]);
186 flat[indx]->SetYDB(
i, thisBin->
y[
j]);
198 if(!evtPlanes.isValid()){
208 for (EvtPlaneCollection::const_iterator rp = evtPlanes->begin();rp !=evtPlanes->end(); rp++) {
209 if(rp->angle() > -5) {
210 string baseName = rp->
label();
213 double psiFlat = flat[
i]->GetFlatPsi(rp->angle(),vzr_sell,
bin);
216 if(storeNames_) ep[
i]=
new EvtPlane(psiFlat, rp->sumSin(), rp->sumCos(),rp->label().data());
217 else ep[
i]=
new EvtPlane(psiFlat, rp->sumSin(), rp->sumCos(),
"");
225 if(ep[
i]!=0) evtplaneOutput->push_back(*ep[
i]);
227 iEvent.
put(evtplaneOutput);
T getParameter(std::string const &) const
std::vector< TrackingParticle > TrackingParticleCollection
bool getByToken(EDGetToken token, Handle< PROD > &result) const
#define DEFINE_FWK_MODULE(type)
edm::EDGetTokenT< reco::EvtPlaneCollection > inputPlanes_
edm::EDGetTokenT< int > centrality_
TrackingParticleRefVector::iterator tp_iterator
std::string label() const
std::vector< Vertex > VertexCollection
collection of Vertex objects
const std::string EPNames[]
~HiEvtPlaneFlatProducer()
OrphanHandle< PROD > put(std::auto_ptr< PROD > product)
Put a new product.
virtual void produce(edm::Event &, const edm::EventSetup &) override
edm::EDGetTokenT< reco::VertexCollection > vtxCollection_
std::vector< EvtPlane > EvtPlaneCollection
HiEvtPlaneFlatProducer(const edm::ParameterSet &)
virtual void endJob() override
static const int NumEPNames
virtual void beginJob() override