test
CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Types | Public Member Functions | Private Member Functions | Private Attributes | Static Private Attributes | Friends
reco::PFRecHit Class Reference

Particle flow rechit (rechit + geometry and topology information). See clustering algorithm in PFClusterAlgo. More...

#include <PFRecHit.h>

Public Types

enum  { NONE =0 }
 
typedef
ROOT::Math::PositionVector3D
< ROOT::Math::CylindricalEta3D
< double > > 
REPPoint
 
typedef std::vector< REPPointREPPointVector
 

Public Member Functions

void addNeighbour (short x, short y, short z, const PFRecHitRef &)
 
void calculatePositionREP ()
 
void clearNeighbours ()
 
int depth () const
 depth for segemntation More...
 
unsigned detId () const
 rechit detId More...
 
double energy () const
 rechit energy More...
 
const math::XYZVectorgetAxisXYZ () const
 rechit cell axis x, y, z More...
 
const std::vector< REPPoint > & getCornersREP () const
 
const std::vector
< math::XYZPoint > & 
getCornersXYZ () const
 rechit corners More...
 
const PFRecHitRef getNeighbour (short x, short y, short z)
 
PFLayer::Layer layer () const
 rechit layer More...
 
const std::vector< unsigned
short > & 
neighbourInfos ()
 
const PFRecHitRefVectorneighbours () const
 
const PFRecHitRefVectorneighbours4 () const
 
const PFRecHitRefVectorneighbours8 () const
 
bool operator< (const PFRecHit &rhs) const
 comparison < operator More...
 
bool operator<= (const PFRecHit &rhs) const
 comparison <= operator More...
 
PFRecHitoperator= (const PFRecHit &other)=default
 
PFRecHitoperator= (PFRecHit &&other)=default
 
bool operator> (const PFRecHit &rhs) const
 comparison > operator More...
 
bool operator>= (const PFRecHit &rhs) const
 comparison >= operator More...
 
const edm::RefToBase
< CaloRecHit > & 
originalRecHit () const
 
 PFRecHit ()
 default constructor. Sets energy and position to zero More...
 
 PFRecHit (unsigned detId, PFLayer::Layer layer, double energy, const math::XYZPoint &posxyz, const math::XYZVector &axisxyz, const std::vector< math::XYZPoint > &cornersxyz)
 constructor from values More...
 
 PFRecHit (unsigned detId, PFLayer::Layer layer, double energy, double posx, double posy, double posz, double axisx, double axisy, double axisz)
 
 PFRecHit (const PFRecHit &other)=default
 copy More...
 
 PFRecHit (PFRecHit &&other)=default
 
const math::XYZPointposition () const
 rechit cell centre x, y, z More...
 
const REPPointpositionREP () const
 
double pt2 () const
 rechit momentum transverse to the beam, squared. More...
 
void setDepth (int depth)
 
void setEnergy (double energy)
 
void setNECorner (double posx, double posy, double posz)
 
void setNWCorner (double posx, double posy, double posz)
 
template<typename T >
void setOriginalRecHit (const T &rh)
 
void setSECorner (double posx, double posy, double posz)
 
void setSWCorner (double posx, double posy, double posz)
 
void setTime (double time)
 
void size (double &deta, double &dphi) const
 
double time () const
 timing for cleaned hits More...
 
 ~PFRecHit ()=default
 destructor More...
 

Private Member Functions

void setCorner (unsigned i, double posx, double posy, double posz)
 set position of one of the corners More...
 

Private Attributes

math::XYZVector axisxyz_
 rechit cell axisxyz More...
 
std::vector< REPPointcornersrep_
 rechit cell corners rho/eta/phi More...
 
std::vector< math::XYZPointcornersxyz_
 rechit cell corners More...
 
int depth_
 depth More...
 
unsigned detId_
 C cell detid - should be detid or index in collection ? More...
 
double energy_
 rechit energy More...
 
PFLayer::Layer layer_
 rechit layer More...
 
std::vector< unsigned short > neighbourInfos_
 
PFRecHitRefVector neighbours4_
 
PFRecHitRefVector neighbours8_
 
PFRecHitRefVector neighbours_
 indices to existing neighbours (1 common side) More...
 
edm::RefToBase< CaloRecHitoriginalRecHit_
 
math::XYZPoint position_
 rechit cell centre: x, y, z More...
 
REPPoint positionrep_
 rechit cell centre: rho, eta, phi (transient) More...
 
double time_
 time More...
 

Static Private Attributes

static const unsigned nCorners_ = 4
 number of corners More...
 

Friends

std::ostream & operator<< (std::ostream &out, const reco::PFRecHit &hit)
 

Detailed Description

Particle flow rechit (rechit + geometry and topology information). See clustering algorithm in PFClusterAlgo.

Author
Colin Bernet
Date
July 2006

Feb 2014 [Michalis: 8 years later!Modifying the class to be able to generalize the neighbours for 3D calorimeters ]

Definition at line 35 of file PFRecHit.h.

Member Typedef Documentation

typedef ROOT::Math::PositionVector3D<ROOT::Math::CylindricalEta3D<double> > reco::PFRecHit::REPPoint

Definition at line 43 of file PFRecHit.h.

Definition at line 45 of file PFRecHit.h.

Member Enumeration Documentation

anonymous enum
Enumerator
NONE 

Definition at line 47 of file PFRecHit.h.

47  {
48  NONE=0
49  };

Constructor & Destructor Documentation

PFRecHit::PFRecHit ( )

default constructor. Sets energy and position to zero

Definition at line 49 of file PFRecHit.cc.

References calculatePositionREP(), cornersxyz_, i, nCorners_, and position_.

49  :
50  detId_(0),
52  energy_(0.),
53  time_(-1.),
54  depth_(0),
55  position_(math::XYZPoint(0.,0.,0.))
56 {
57 
58  cornersxyz_.reserve( nCorners_ );
59  for(unsigned i=0; i<nCorners_; i++) {
60  cornersxyz_.push_back( position_ );
61  }
63 }
int i
Definition: DBlmapReader.cc:9
std::vector< math::XYZPoint > cornersxyz_
rechit cell corners
Definition: PFRecHit.h:207
unsigned detId_
C cell detid - should be detid or index in collection ?
Definition: PFRecHit.h:182
int depth_
depth
Definition: PFRecHit.h:195
double time_
time
Definition: PFRecHit.h:191
PFLayer::Layer layer_
rechit layer
Definition: PFRecHit.h:185
double energy_
rechit energy
Definition: PFRecHit.h:188
void calculatePositionREP()
Definition: PFRecHit.cc:144
math::XYZPoint position_
rechit cell centre: x, y, z
Definition: PFRecHit.h:198
XYZPointD XYZPoint
point in space with cartesian internal representation
Definition: Point3D.h:12
static const unsigned nCorners_
number of corners
Definition: PFRecHit.h:222
PFRecHit::PFRecHit ( unsigned  detId,
PFLayer::Layer  layer,
double  energy,
const math::XYZPoint posxyz,
const math::XYZVector axisxyz,
const std::vector< math::XYZPoint > &  cornersxyz 
)

constructor from values

Definition at line 66 of file PFRecHit.cc.

References calculatePositionREP().

71  :
72  detId_(detId),
73  layer_(layer),
74  energy_(energy),
75  time_(-1.),
76  depth_(0),
78  axisxyz_(axisxyz),
79  cornersxyz_(cornersxyz)
80 {
82 }
std::vector< math::XYZPoint > cornersxyz_
rechit cell corners
Definition: PFRecHit.h:207
unsigned detId_
C cell detid - should be detid or index in collection ?
Definition: PFRecHit.h:182
unsigned detId() const
rechit detId
Definition: PFRecHit.h:111
int depth_
depth
Definition: PFRecHit.h:195
double time_
time
Definition: PFRecHit.h:191
PFLayer::Layer layer_
rechit layer
Definition: PFRecHit.h:185
double energy_
rechit energy
Definition: PFRecHit.h:188
PFLayer::Layer layer() const
rechit layer
Definition: PFRecHit.h:114
math::XYZVector axisxyz_
rechit cell axisxyz
Definition: PFRecHit.h:204
const math::XYZPoint & position() const
rechit cell centre x, y, z
Definition: PFRecHit.h:136
void calculatePositionREP()
Definition: PFRecHit.cc:144
math::XYZPoint position_
rechit cell centre: x, y, z
Definition: PFRecHit.h:198
double energy() const
rechit energy
Definition: PFRecHit.h:117
PFRecHit::PFRecHit ( unsigned  detId,
PFLayer::Layer  layer,
double  energy,
double  posx,
double  posy,
double  posz,
double  axisx,
double  axisy,
double  axisz 
)

Definition at line 84 of file PFRecHit.cc.

References calculatePositionREP(), cornersxyz_, i, nCorners_, and position_.

88  :
89 
90  detId_(detId),
91  layer_(layer),
92  energy_(energy),
93  time_(-1.),
94  depth_(0),
95  position_(posx, posy, posz),
96  axisxyz_(axisx, axisy, axisz) {
97 
98  cornersxyz_.reserve( nCorners_ );
99  for(unsigned i=0; i<nCorners_; i++) {
100  cornersxyz_.push_back( position_ );
101  }
102 
104 
105 }
int i
Definition: DBlmapReader.cc:9
std::vector< math::XYZPoint > cornersxyz_
rechit cell corners
Definition: PFRecHit.h:207
unsigned detId_
C cell detid - should be detid or index in collection ?
Definition: PFRecHit.h:182
unsigned detId() const
rechit detId
Definition: PFRecHit.h:111
int depth_
depth
Definition: PFRecHit.h:195
double time_
time
Definition: PFRecHit.h:191
PFLayer::Layer layer_
rechit layer
Definition: PFRecHit.h:185
double energy_
rechit energy
Definition: PFRecHit.h:188
PFLayer::Layer layer() const
rechit layer
Definition: PFRecHit.h:114
math::XYZVector axisxyz_
rechit cell axisxyz
Definition: PFRecHit.h:204
void calculatePositionREP()
Definition: PFRecHit.cc:144
math::XYZPoint position_
rechit cell centre: x, y, z
Definition: PFRecHit.h:198
double energy() const
rechit energy
Definition: PFRecHit.h:117
static const unsigned nCorners_
number of corners
Definition: PFRecHit.h:222
reco::PFRecHit::PFRecHit ( const PFRecHit other)
default

copy

reco::PFRecHit::PFRecHit ( PFRecHit &&  other)
default
reco::PFRecHit::~PFRecHit ( )
default

destructor

Member Function Documentation

void PFRecHit::addNeighbour ( short  x,
short  y,
short  z,
const PFRecHitRef ref 
)

Definition at line 161 of file PFRecHit.cc.

References funct::abs(), neighbourInfos_, neighbours4_, neighbours8_, neighbours_, and edm::RefVector< C, T, F >::push_back().

Referenced by PFRecHitNavigatorBase::associateNeighbour(), and PFRecHitCaloNavigatorWithTime< EEDetId, EcalEndcapTopology >::associateNeighbour().

161  {
162  //bitmask interface to accomodate more advanced naighbour finding [i.e in z as well]
163  //bit 0 side for eta [0 for <=0 , 1 for >0]
164  //bits 1,2,3 : abs(eta) wrt the center
165  //bit 4 side for phi
166  //bits 5,6,7 : abs(phi) wrt the center
167  //bit 8 side for z
168  //bits 9,10,11 : abs(z) wrt the center
169 
170  unsigned short absx = std::abs(x);
171  unsigned short absy = std::abs(y);
172  unsigned short absz = std::abs(z);
173 
174  unsigned short bitmask=0;
175 
176 
177  if (x>0)
178  bitmask = bitmask | 1 ;
179  bitmask = bitmask | (absx << 1);
180  if (y>0)
181  bitmask = bitmask | (1<<4) ;
182  bitmask = bitmask | (absy << 5);
183  if (z>0)
184  bitmask = bitmask | (1<<8) ;
185  bitmask = bitmask | (absz << 9);
186 
187  neighbours_.push_back(ref);
188  neighbourInfos_.push_back(bitmask);
189 
190  if (z==0) {
191  neighbours8_.push_back(ref);
192  //find only the 4 neighbours
193  if (absx+absy==1)
194  neighbours4_.push_back(ref);
195  }
196 }
PFRecHitRefVector neighbours4_
Definition: PFRecHit.h:217
std::vector< unsigned short > neighbourInfos_
Definition: PFRecHit.h:214
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
PFRecHitRefVector neighbours8_
Definition: PFRecHit.h:218
PFRecHitRefVector neighbours_
indices to existing neighbours (1 common side)
Definition: PFRecHit.h:213
void push_back(value_type const &ref)
Add a Ref&lt;C, T&gt; to the RefVector.
Definition: RefVector.h:69
void PFRecHit::calculatePositionREP ( )

Definition at line 144 of file PFRecHit.cc.

References cornersrep_, cornersxyz_, eta, i, position_, and positionrep_.

Referenced by PFRecHit().

144  {
145  double rho(0), eta(0), phi(0);
146  calculateREP(position_,rho,eta,phi);
147 
148  positionrep_.SetCoordinates( rho,
149  eta,
150  phi );
151  cornersrep_.resize(cornersxyz_.size());
152  for( unsigned i = 0; i < cornersxyz_.size(); ++i ) {
153  const auto& corner = cornersxyz_[i];
154  calculateREP(corner,rho,eta,phi);
155  cornersrep_[i].SetCoordinates( rho,
156  eta,
157  phi );
158  }
159 }
int i
Definition: DBlmapReader.cc:9
std::vector< math::XYZPoint > cornersxyz_
rechit cell corners
Definition: PFRecHit.h:207
math::XYZPoint position_
rechit cell centre: x, y, z
Definition: PFRecHit.h:198
std::vector< REPPoint > cornersrep_
rechit cell corners rho/eta/phi
Definition: PFRecHit.h:210
REPPoint positionrep_
rechit cell centre: rho, eta, phi (transient)
Definition: PFRecHit.h:201
void reco::PFRecHit::clearNeighbours ( )
inline

Definition at line 85 of file PFRecHit.h.

References edm::RefVector< C, T, F >::clear(), and neighbours_.

85  {
87  }
void clear()
Clear the vector.
Definition: RefVector.h:147
PFRecHitRefVector neighbours_
indices to existing neighbours (1 common side)
Definition: PFRecHit.h:213
int reco::PFRecHit::depth ( ) const
inline

depth for segemntation

Definition at line 124 of file PFRecHit.h.

References depth_.

Referenced by setDepth().

124 { return depth_; }
int depth_
depth
Definition: PFRecHit.h:195
unsigned reco::PFRecHit::detId ( ) const
inline
double reco::PFRecHit::energy ( ) const
inline
const math::XYZVector& reco::PFRecHit::getAxisXYZ ( ) const
inline

rechit cell axis x, y, z

Definition at line 142 of file PFRecHit.h.

References axisxyz_.

142 { return axisxyz_; }
math::XYZVector axisxyz_
rechit cell axisxyz
Definition: PFRecHit.h:204
const std::vector<REPPoint>& reco::PFRecHit::getCornersREP ( ) const
inline

Definition at line 148 of file PFRecHit.h.

References cornersrep_.

Referenced by LinkByRecHit::testTrackAndClusterByRecHit().

148 { return cornersrep_; }
std::vector< REPPoint > cornersrep_
rechit cell corners rho/eta/phi
Definition: PFRecHit.h:210
const std::vector< math::XYZPoint >& reco::PFRecHit::getCornersXYZ ( ) const
inline

rechit corners

Definition at line 145 of file PFRecHit.h.

References cornersxyz_.

Referenced by LinkByRecHit::testECALAndPSByRecHit(), and LinkByRecHit::testTrackAndClusterByRecHit().

146  { return cornersxyz_; }
std::vector< math::XYZPoint > cornersxyz_
rechit cell corners
Definition: PFRecHit.h:207
const PFRecHitRef PFRecHit::getNeighbour ( short  x,
short  y,
short  z 
)

Definition at line 199 of file PFRecHit.cc.

References funct::abs(), i, neighbourInfos_, and neighbours_.

199  {
200  unsigned short absx = abs(x);
201  unsigned short absy = abs(y);
202  unsigned short absz = abs(z);
203 
204  unsigned short bitmask=0;
205 
206  if (x>0)
207  bitmask = bitmask | 1 ;
208  bitmask = bitmask | (absx << 1);
209  if (y>0)
210  bitmask = bitmask | (1<<4) ;
211  bitmask = bitmask | (absy << 5);
212  if (z>0)
213  bitmask = bitmask | (1<<8) ;
214  bitmask = bitmask | (absz << 9);
215 
216  for (unsigned int i=0;i<neighbourInfos_.size();++i) {
217  if (neighbourInfos_[i] == bitmask)
218  return neighbours_[i];
219  }
220  return PFRecHitRef();
221 }
int i
Definition: DBlmapReader.cc:9
std::vector< unsigned short > neighbourInfos_
Definition: PFRecHit.h:214
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
edm::Ref< PFRecHitCollection > PFRecHitRef
persistent reference to PFRecHit objects
Definition: PFRecHitFwd.h:15
PFRecHitRefVector neighbours_
indices to existing neighbours (1 common side)
Definition: PFRecHit.h:213
PFLayer::Layer reco::PFRecHit::layer ( ) const
inline
const std::vector<unsigned short>& reco::PFRecHit::neighbourInfos ( )
inline

Definition at line 100 of file PFRecHit.h.

References neighbourInfos_.

100  {
101  return neighbourInfos_;
102  }
std::vector< unsigned short > neighbourInfos_
Definition: PFRecHit.h:214
const PFRecHitRefVector& reco::PFRecHit::neighbours ( ) const
inline

Definition at line 96 of file PFRecHit.h.

References neighbours_.

96  {
97  return neighbours_;
98  }
PFRecHitRefVector neighbours_
indices to existing neighbours (1 common side)
Definition: PFRecHit.h:213
const PFRecHitRefVector& reco::PFRecHit::neighbours4 ( ) const
inline

Definition at line 89 of file PFRecHit.h.

References neighbours4_.

Referenced by RBXAndHPDCleaner::clean(), and SpikeAndDoubleSpikeCleaner::clean().

89  {
90  return neighbours4_;
91  }
PFRecHitRefVector neighbours4_
Definition: PFRecHit.h:217
const PFRecHitRefVector& reco::PFRecHit::neighbours8 ( ) const
inline

Definition at line 92 of file PFRecHit.h.

References neighbours8_.

92  {
93  return neighbours8_;
94  }
PFRecHitRefVector neighbours8_
Definition: PFRecHit.h:218
bool reco::PFRecHit::operator< ( const PFRecHit rhs) const
inline

comparison < operator

Definition at line 162 of file PFRecHit.h.

References energy_.

162 { return (energy_< rhs.energy_); }
double energy_
rechit energy
Definition: PFRecHit.h:188
bool reco::PFRecHit::operator<= ( const PFRecHit rhs) const
inline

comparison <= operator

Definition at line 159 of file PFRecHit.h.

References energy_.

159 { return (energy_<=rhs.energy_); }
double energy_
rechit energy
Definition: PFRecHit.h:188
PFRecHit& reco::PFRecHit::operator= ( const PFRecHit other)
default
PFRecHit& reco::PFRecHit::operator= ( PFRecHit &&  other)
default
bool reco::PFRecHit::operator> ( const PFRecHit rhs) const
inline

comparison > operator

Definition at line 156 of file PFRecHit.h.

References energy_.

156 { return (energy_> rhs.energy_); }
double energy_
rechit energy
Definition: PFRecHit.h:188
bool reco::PFRecHit::operator>= ( const PFRecHit rhs) const
inline

comparison >= operator

Definition at line 153 of file PFRecHit.h.

References energy_.

153 { return (energy_>=rhs.energy_); }
double energy_
rechit energy
Definition: PFRecHit.h:188
const edm::RefToBase<CaloRecHit>& reco::PFRecHit::originalRecHit ( ) const
inline

Definition at line 167 of file PFRecHit.h.

References originalRecHit_.

167  {
168  return originalRecHit_;
169  }
edm::RefToBase< CaloRecHit > originalRecHit_
Definition: PFRecHit.h:179
const math::XYZPoint& reco::PFRecHit::position ( ) const
inline

rechit cell centre x, y, z

Definition at line 136 of file PFRecHit.h.

References position_.

Referenced by KDTreeLinkerPSEcal::buildTree(), PFAlgo::checkCleaning(), RBXAndHPDCleaner::clean(), LinkByRecHit::testECALAndPSByRecHit(), and LinkByRecHit::testTrackAndClusterByRecHit().

136 { return position_; }
math::XYZPoint position_
rechit cell centre: x, y, z
Definition: PFRecHit.h:198
const REPPoint& reco::PFRecHit::positionREP ( ) const
inline

Definition at line 138 of file PFRecHit.h.

References positionrep_.

Referenced by SpikeAndDoubleSpikeCleaner::clean(), and LinkByRecHit::testTrackAndClusterByRecHit().

138 { return positionrep_; }
REPPoint positionrep_
rechit cell centre: rho, eta, phi (transient)
Definition: PFRecHit.h:201
double reco::PFRecHit::pt2 ( ) const
inline

rechit momentum transverse to the beam, squared.

Definition at line 127 of file PFRecHit.h.

References energy_, and position_.

127  { return energy_ * energy_ *
128  ( position_.X()*position_.X() +
129  position_.Y()*position_.Y() ) /
130  ( position_.X()*position_.X() +
131  position_.Y()*position_.Y() +
132  position_.Z()*position_.Z()) ; }
double energy_
rechit energy
Definition: PFRecHit.h:188
math::XYZPoint position_
rechit cell centre: x, y, z
Definition: PFRecHit.h:198
void PFRecHit::setCorner ( unsigned  i,
double  posx,
double  posy,
double  posz 
)
private

set position of one of the corners

Definition at line 130 of file PFRecHit.cc.

References assert(), cornersrep_, cornersxyz_, eta, i, and nCorners_.

Referenced by setNECorner(), setNWCorner(), setSECorner(), and setSWCorner().

130  {
131  assert( cornersxyz_.size() == nCorners_);
132  assert( i<cornersxyz_.size() );
133  double rho(0), eta(0), phi(0);
134 
135  cornersxyz_[i] = math::XYZPoint( posx, posy, posz);
136  const auto& corner = cornersxyz_[i];
137  calculateREP(corner, rho, eta, phi);
139  eta,
140  phi );
141 }
int i
Definition: DBlmapReader.cc:9
std::vector< math::XYZPoint > cornersxyz_
rechit cell corners
Definition: PFRecHit.h:207
assert(m_qm.get())
ROOT::Math::PositionVector3D< ROOT::Math::CylindricalEta3D< double > > REPPoint
Definition: PFRecHit.h:43
XYZPointD XYZPoint
point in space with cartesian internal representation
Definition: Point3D.h:12
std::vector< REPPoint > cornersrep_
rechit cell corners rho/eta/phi
Definition: PFRecHit.h:210
static const unsigned nCorners_
number of corners
Definition: PFRecHit.h:222
void reco::PFRecHit::setDepth ( int  depth)
inline

Definition at line 84 of file PFRecHit.h.

References depth(), and depth_.

Referenced by PFHBHERecHitCreatorMaxSample::importRecHits().

84 { depth_ = depth; }
int depth_
depth
Definition: PFRecHit.h:195
int depth() const
depth for segemntation
Definition: PFRecHit.h:124
void reco::PFRecHit::setEnergy ( double  energy)
inline

Definition at line 77 of file PFRecHit.h.

References energy(), and energy_.

Referenced by PFHFRecHitCreator::importRecHits(), PFRecHitQTestHCALCalib29::test(), and PFRecHitQTestThresholdInMIPs::test().

77 { energy_ = energy; }
double energy_
rechit energy
Definition: PFRecHit.h:188
double energy() const
rechit energy
Definition: PFRecHit.h:117
void PFRecHit::setNECorner ( double  posx,
double  posy,
double  posz 
)

Definition at line 125 of file PFRecHit.cc.

References setCorner().

Referenced by PFCTRecHitProducer::createHcalRecHit().

125  {
126  setCorner(3, posx, posy, posz);
127 }
void setCorner(unsigned i, double posx, double posy, double posz)
set position of one of the corners
Definition: PFRecHit.cc:130
void PFRecHit::setNWCorner ( double  posx,
double  posy,
double  posz 
)

Definition at line 110 of file PFRecHit.cc.

References setCorner().

Referenced by PFCTRecHitProducer::createHcalRecHit().

110  {
111  setCorner(0, posx, posy, posz);
112 }
void setCorner(unsigned i, double posx, double posy, double posz)
set position of one of the corners
Definition: PFRecHit.cc:130
template<typename T >
void reco::PFRecHit::setOriginalRecHit ( const T rh)
inline

Definition at line 172 of file PFRecHit.h.

References originalRecHit_.

Referenced by PFHGCalRecHitCreator< DET, Layer, subdet >::importRecHits().

172  {
174  }
edm::RefToBase< CaloRecHit > originalRecHit_
Definition: PFRecHit.h:179
void PFRecHit::setSECorner ( double  posx,
double  posy,
double  posz 
)

Definition at line 120 of file PFRecHit.cc.

References setCorner().

Referenced by PFCTRecHitProducer::createHcalRecHit().

120  {
121  setCorner(2, posx, posy, posz);
122 }
void setCorner(unsigned i, double posx, double posy, double posz)
set position of one of the corners
Definition: PFRecHit.cc:130
void PFRecHit::setSWCorner ( double  posx,
double  posy,
double  posz 
)

Definition at line 115 of file PFRecHit.cc.

References setCorner().

Referenced by PFCTRecHitProducer::createHcalRecHit().

115  {
116  setCorner(1, posx, posy, posz);
117 }
void setCorner(unsigned i, double posx, double posy, double posz)
set position of one of the corners
Definition: PFRecHit.cc:130
void reco::PFRecHit::setTime ( double  time)
inline
void PFRecHit::size ( double &  deta,
double &  dphi 
) const

Definition at line 224 of file PFRecHit.cc.

References cornersxyz_, and eta.

224  {
225 
226  double minphi=9999;
227  double maxphi=-9999;
228  double mineta=9999;
229  double maxeta=-9999;
230  for ( unsigned ic=0; ic<cornersxyz_.size(); ++ic ) {
231  double eta = cornersxyz_[ic].Eta();
232  double phi = cornersxyz_[ic].Phi();
233 
234  if(phi>maxphi) maxphi=phi;
235  if(phi<minphi) minphi=phi;
236  if(eta>maxeta) maxeta=eta;
237  if(eta<mineta) mineta=eta;
238  }
239 
240  deta = maxeta - mineta;
241  dphi = maxphi - minphi;
242 }
std::vector< math::XYZPoint > cornersxyz_
rechit cell corners
Definition: PFRecHit.h:207
double reco::PFRecHit::time ( ) const
inline

Friends And Related Function Documentation

std::ostream& operator<< ( std::ostream &  out,
const reco::PFRecHit hit 
)
friend

Member Data Documentation

math::XYZVector reco::PFRecHit::axisxyz_
private

rechit cell axisxyz

Definition at line 204 of file PFRecHit.h.

Referenced by getAxisXYZ().

std::vector< REPPoint > reco::PFRecHit::cornersrep_
private

rechit cell corners rho/eta/phi

Definition at line 210 of file PFRecHit.h.

Referenced by calculatePositionREP(), getCornersREP(), and setCorner().

std::vector< math::XYZPoint > reco::PFRecHit::cornersxyz_
private

rechit cell corners

Definition at line 207 of file PFRecHit.h.

Referenced by calculatePositionREP(), getCornersXYZ(), PFRecHit(), setCorner(), and size().

int reco::PFRecHit::depth_
private

depth

Definition at line 195 of file PFRecHit.h.

Referenced by depth(), and setDepth().

unsigned reco::PFRecHit::detId_
private

C cell detid - should be detid or index in collection ?

Definition at line 182 of file PFRecHit.h.

Referenced by detId().

double reco::PFRecHit::energy_
private

rechit energy

Definition at line 188 of file PFRecHit.h.

Referenced by energy(), operator<(), operator<=(), operator>(), operator>=(), pt2(), and setEnergy().

PFLayer::Layer reco::PFRecHit::layer_
private

rechit layer

Definition at line 185 of file PFRecHit.h.

Referenced by layer().

const unsigned PFRecHit::nCorners_ = 4
staticprivate

number of corners

Definition at line 222 of file PFRecHit.h.

Referenced by PFRecHit(), and setCorner().

std::vector< unsigned short > reco::PFRecHit::neighbourInfos_
private

Definition at line 214 of file PFRecHit.h.

Referenced by addNeighbour(), getNeighbour(), and neighbourInfos().

PFRecHitRefVector reco::PFRecHit::neighbours4_
private

Definition at line 217 of file PFRecHit.h.

Referenced by addNeighbour(), and neighbours4().

PFRecHitRefVector reco::PFRecHit::neighbours8_
private

Definition at line 218 of file PFRecHit.h.

Referenced by addNeighbour(), and neighbours8().

PFRecHitRefVector reco::PFRecHit::neighbours_
private

indices to existing neighbours (1 common side)

Definition at line 213 of file PFRecHit.h.

Referenced by addNeighbour(), clearNeighbours(), getNeighbour(), and neighbours().

edm::RefToBase<CaloRecHit> reco::PFRecHit::originalRecHit_
private

Definition at line 179 of file PFRecHit.h.

Referenced by originalRecHit(), and setOriginalRecHit().

math::XYZPoint reco::PFRecHit::position_
private

rechit cell centre: x, y, z

Definition at line 198 of file PFRecHit.h.

Referenced by calculatePositionREP(), PFRecHit(), position(), and pt2().

REPPoint reco::PFRecHit::positionrep_
private

rechit cell centre: rho, eta, phi (transient)

Definition at line 201 of file PFRecHit.h.

Referenced by calculatePositionREP(), and positionREP().

double reco::PFRecHit::time_
private

time

Definition at line 191 of file PFRecHit.h.

Referenced by setTime(), and time().