Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:30:58

0001 #ifndef _TRACKER_EnergyDepositUnit_H
0002 #define _TRACKER_EnergyDepositUnit_H
0003 
0004 #include "DataFormats/GeometryVector/interface/LocalPoint.h"
0005 #include "DataFormats/GeometryVector/interface/LocalVector.h"
0006 /**
0007  * Class which allows to "follow" an elementary charge in the silicon.
0008  * It basically defines a quantum of energy in the bulk, with a 3D position.
0009  */
0010 class EnergyDepositUnit {
0011 public:
0012   EnergyDepositUnit() : _energy(0), _position(0, 0, 0) {}
0013   EnergyDepositUnit(float energy, float x, float y, float z) : _energy(energy), _position(x, y, z) {}
0014   EnergyDepositUnit(float energy, const Local3DPoint& position) : _energy(energy), _position(position) {}
0015   float x() const { return _position.x(); }
0016   float y() const { return _position.y(); }
0017   float z() const { return _position.z(); }
0018   float energy() const { return _energy; }
0019 
0020 private:
0021   float _energy;
0022   Local3DPoint _position;
0023 };
0024 
0025 #endif