|
ATLAS Offline Software
|
Go to the documentation of this file.
5 #ifndef CALOEVENT_CALOCELL_H
6 #define CALOEVENT_CALOCELL_H
41 #include "Identifier/Identifier.h"
50 #include "CaloDetDescr/CaloDetDescrElement.h"
112 virtual double phi ()
const override final;
114 virtual double eta ()
const override final;
116 virtual double sinTh ()
const override final;
118 virtual double cosTh ()
const override final;
120 virtual double sinPhi ()
const override final;
122 virtual double cosPhi ()
const override final;
124 virtual double cotTh ()
const override final;
126 virtual double m ()
const override final;
128 virtual double e ()
const override final;
130 virtual double et ()
const override final;
186 virtual void set4Mom (
const CLHEP::HepLorentzVector & theHlv )
override final;
190 virtual std::unique_ptr<CaloCell>
clone()
const;
225 # define m_qualProv ((uint16_t*)&m_quality)
226 # define m_tileQual ((uint8_t*)&m_quality)
292 return p->ID().get_identifier32().get_compact();
301 return p->ID().get_identifier32().get_compact();
409 return this->
e() * this->
sinTh();
float cosPhi() const
for fast px py pz computation
std::size_t navigationHash(const CaloCell *p)
void assign(const CaloDetDescrElement *caloDDE, const Identifier &ID, float energy, float time, uint16_t quality, uint16_t provenance, CaloGain::CaloGain gain)
For initializing a cell we get from a DataPool.
virtual void setCaloDDE(const CaloDetDescrElement *caloDDE)
set pointer to CaloDetDescrElement
virtual double cotTh() const override final
get cottan(theta)
virtual double phi() const override final
get phi (through CaloDetDescrElement)
float cotTh() const
for fast px py pz computation
void set(const CaloDetDescrElement *caloDDE, const Identifier &ID)
Fast method to change the identity of a cell.
std::vector< Identifier > ID
float y() const
get y (through CaloDetDescrElement)
virtual void set4Mom(const I4Momentum *const theI4Mom) override final
set 4Momentum (will throw exception since cannot be implemented)
virtual void setTime(float time)
set time
This class groups all DetDescr information related to a CaloCell. Provides a generic interface for al...
Dummy type needed fro specialized implementation.
virtual double e() const override final
get energy (data member) (synonym to method energy()
A functional to get the ID from a CaloCell pointer.
uint16_t provenance() const
get provenance (data member)
virtual void setEnergy(float energy)
set energy
float time() const
get time (data member)
virtual std::unique_ptr< CaloCell > clone() const
clone a CaloCell
double energy() const
get energy (data member)
virtual double cosPhi() const override final
get cos(phi)
CaloCell()
default constructor (should not be used, only there for persistency reason)
virtual void setQuality(uint16_t quality)
set quality
const CaloDetDescrElement * caloDDE() const
get pointer to CaloDetDescrElement (data member)
CaloGain::CaloGain m_gain
gain
float m_energy
energy (in MeV)
virtual bool badcell() const
check is cell is dead
virtual double et() const override final
get et
void setGain(CaloGain::CaloGain gain=CaloGain::INVALIDGAIN)
set gain
void setProvenance(uint16_t prov)
set Provenance
uint16_t quality() const
get quality (data member)
virtual ~CaloCell()
default destructor
virtual void scaleEnergy(float scale)
scale energy
CaloGain::CaloGain gain() const
get gain (data member )
Identifier ID() const
get ID (from cached data member) non-virtual and inline for fast access
std::size_t operator()(const CaloCell *p) const
Data object for each calorimeter readout cell.
def time(flags, cells_name, *args, **kw)
float cosTh() const
for fast px py pz computation
virtual double m() const override final
get mass (hardcoded to be null)
float z() const
get z (through CaloDetDescrElement)
float x() const
get x (through CaloDetDescrElement)
float eta() const
cell eta
virtual double cosTh() const override final
get cos(theta) (derived from sinTh)
float phi() const
cell phi
const CaloDetDescrElement * m_caloDDE
pointer to static CaloDetDescrElement to access information that does not change from event to event
float sinTh() const
for algorithm working in transverse Energy
virtual void addEnergy(float energy)
add energy
float sinPhi() const
for fast px py pz computation
virtual double sinPhi() const override final
get sin(phi)
Identifier m_ID
offline identifier
virtual double sinTh() const override final
get sin(theta) (through CaloDetDescrElement)
virtual double eta() const override final
get eta (through CaloDetDescrElement)