77 input_(iConfig.getUntrackedParameter<std::
string>(
"inputprocess",
"castorreco"))
80 produces<CastorCellCollection>();
101 using namespace reco;
102 using namespace TMath;
114 <<
"1. entering CastorCellProducer ";
116 for (
size_t i = 0;
i < InputRecHits->size(); ++
i) {
131 if (module == 1) zCell = 14415;
132 if (module == 2) zCell = 14464;
135 zCell = 14534 + (module - 3)*92;
139 double castorphi[16];
140 for (
int j = 0;
j < 16;
j++) {
141 castorphi[
j] = -2.94524 +
j*0.3927;
144 phiCell = castorphi[sector - 9];
146 phiCell = castorphi[sector + 7];
150 if (zside <= 0) zCell = -1*zCell;
156 CellPoint tempcellposition(rhoCell,zCell,phiCell);
157 Point cellposition(tempcellposition);
160 <<
"cell number: "<<
i+1<<std::endl
161 <<
"rho: "<<cellposition.rho()<<
" phi: "<<cellposition.phi()*
MYR2D<<
" eta: "<<cellposition.eta()<<std::endl
162 <<
"x: "<<cellposition.x()<<
" y: "<<cellposition.y()<<
" z: "<<cellposition.z();
166 OutputCells->push_back(newCell);
172 <<
"total number of cells in the event: "<<InputRecHits->size();
174 iEvent.
put(OutputCells);
182 <<
"Starting CastorCellProducer";
188 <<
"Ending CastorCellProducer";
int sector() const
get the sector (1-16)
#define DEFINE_FWK_MODULE(type)
int module() const
get the module (1-2 for EM, 1-12 for HAD)
HcalCastorDetId id() const
get the id
virtual void produce(edm::Event &, const edm::EventSetup &)
OrphanHandle< PROD > put(std::auto_ptr< PROD > product)
Put a new product.
int zside() const
get the z-side of the cell (1/-1)
bool getByLabel(InputTag const &tag, Handle< PROD > &result) const
std::vector< reco::CastorCell > CastorCellCollection
ROOT::Math::PositionVector3D< ROOT::Math::Cartesian3D< double > > XYZPointD
point in space with cartesian internal representation
CastorCellProducer(const edm::ParameterSet &)
ROOT::Math::RhoZPhiPoint CellPoint