78 produces<CastorCellCollection>();
96 using namespace TMath;
103 auto OutputCells = std::make_unique<CastorCellCollection>();
107 LogDebug(
"CastorCellProducer") <<
"1. entering CastorCellProducer ";
109 for (
size_t i = 0;
i < InputRecHits->size(); ++
i) {
130 zCell = 14534 + (module - 3) * 92;
134 double castorphi[16];
135 for (
int j = 0;
j < 16;
j++) {
136 castorphi[
j] = -2.94524 +
j * 0.3927;
139 phiCell = castorphi[sector - 9];
141 phiCell = castorphi[sector + 7];
152 CellPoint tempcellposition(rhoCell, zCell, phiCell);
153 Point cellposition(tempcellposition);
155 LogDebug(
"CastorCellProducer") <<
"cell number: " <<
i + 1 << std::endl
156 <<
"rho: " << cellposition.rho() <<
" phi: " << cellposition.phi() *
MYR2D
157 <<
" eta: " << cellposition.eta() << std::endl
158 <<
"x: " << cellposition.x() <<
" y: " << cellposition.y()
159 <<
" z: " << cellposition.z();
163 OutputCells->push_back(newCell);
168 LogDebug(
"CastorCellProducer") <<
"total number of cells in the event: " << InputRecHits->size();
constexpr float energy() const
T getUntrackedParameter(std::string const &, T const &) const
OrphanHandle< PROD > put(std::unique_ptr< PROD > product)
Put a new product.
int sector() const
get the sector (1-16)
bool getByToken(EDGetToken token, Handle< PROD > &result) const
#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
edm::EDGetTokenT< CastorRecHitCollection > tok_input_
int zside() const
get the z-side of the cell (1/-1)
std::vector< reco::CastorCell > CastorCellCollection
~CastorCellProducer() override
ROOT::Math::PositionVector3D< ROOT::Math::Cartesian3D< double > > XYZPointD
point in space with cartesian internal representation
void produce(edm::Event &, const edm::EventSetup &) override
Structure Point Contains parameters of Gaussian fits to DMRs.
CastorCellProducer(const edm::ParameterSet &)
ROOT::Math::RhoZPhiPoint CellPoint