33 #include "Math/Vector3D.h"
93 virtual void endJob() ;
135 produces<reco::EvtPlaneCollection>();
137 Int_t FlatOrder = 21;
165 using namespace reco;
173 int bin = *(ch.product());
180 iEvent.
getByLabel(vtxCollection_,vertexCollection3);
182 vs_sell = vertices3->size();
184 vzr_sell = vertices3->begin()->z();
185 vzErr_sell = vertices3->begin()->zError();
193 int flatTableSize = flatparmsDB_->m_table.size();
194 for(
int i = 0;
i<flatTableSize;
i++) {
199 flat[indx]->SetXDB(
i, thisBin->
x[
j]);
200 flat[indx]->SetYDB(
i, thisBin->
y[
j]);
212 if(!evtPlanes.isValid()){
222 for (EvtPlaneCollection::const_iterator rp = evtPlanes->begin();rp !=evtPlanes->end(); rp++) {
223 if(rp->angle() > -5) {
224 string baseName = rp->
label();
227 double psiFlat = flat[
i]->GetFlatPsi(rp->angle(),vzr_sell,
bin);
230 if(storeNames_) ep[
i]=
new EvtPlane(psiFlat, rp->sumSin(), rp->sumCos(),rp->label().data());
231 else ep[
i]=
new EvtPlane(psiFlat, rp->sumSin(), rp->sumCos(),
"");
239 if(ep[
i]!=0) evtplaneOutput->push_back(*ep[
i]);
241 iEvent.
put(evtplaneOutput);
T getParameter(std::string const &) const
edm::InputTag vtxCollection_
std::vector< TrackingParticle > TrackingParticleCollection
#define DEFINE_FWK_MODULE(type)
TrackingParticleRefVector::iterator tp_iterator
std::string label() const
std::vector< Vertex > VertexCollection
collection of Vertex objects
const std::string EPNames[]
edm::InputTag inputPlanes_
~HiEvtPlaneFlatProducer()
OrphanHandle< PROD > put(std::auto_ptr< PROD > product)
Put a new product.
virtual void produce(edm::Event &, const edm::EventSetup &)
std::vector< EvtPlane > EvtPlaneCollection
edm::InputTag centrality_
bool getByLabel(InputTag const &tag, Handle< PROD > &result) const
HiEvtPlaneFlatProducer(const edm::ParameterSet &)
static const int NumEPNames