10#ifndef VXD_DATAOBJECTS_VXDSIMHIT_H
11#define VXD_DATAOBJECTS_VXDSIMHIT_H
13#include <simulation/dataobjects/SimHitBase.h>
14#include <vxd/dataobjects/VxdID.h>
15#include <Math/Vector3D.h>
42 VXDSimHit(
VxdID sensorID,
int pdg,
float globalTime,
const float* posIn,
const float* posOut):
Class SimHitBase - A common base for subdetector SimHits.
Class VXDSimHit - Geant4 simulated hit for the VXD.
std::vector< unsigned int > m_electronProfile
Energy depsoition profile encoded using the ElectronDeposit class.
float m_globalTime
Time of electron deposition.
const float * getPosArrayIn() const
Return the start point of the electron deposition in local coordinates as float array.
float m_posOut[3]
End point of electron deposition in local coordinates.
unsigned short m_sensorID
ID of the sensor the electron was deposited in.
float getGlobalTime() const override
Return the time of the electron deposition.
int getPDGcode() const
Return the PDG code of the particle causing the electron deposition.
void setEnergyDeposit(std::vector< unsigned int > &electronProfile)
Set energy deposition profile To avoid copying of the entries this will take over the contents of the...
VXDSimHit()
default constructor for ROOT
float m_posIn[3]
Start point of electron deposition in local coordinates.
int m_pdg
PDG Code of the particle producing the Hit.
ROOT::Math::XYZVector getPosOut() const
Return the end point of the electron deposition in local coordinates.
std::vector< std::pair< float, float > > getElectronsConstantDistance(double length) const
Get the electron deposition along constant stepsize.
float getElectrons() const
Return the number of created electrons.
std::vector< std::pair< float, float > > getElectronProfile() const
Get the decoded electron profile.
ROOT::Math::XYZVector getPosIn() const
Return the start point of the electron deposition in local coordinates.
VxdID getSensorID() const
Return the sensorID of the sensor the electron was deposited in.
VXDSimHit(VxdID sensorID, int pdg, float globalTime, const float *posIn, const float *posOut)
Standard constructor.
std::vector< std::pair< float, float > > getElectronsConstantNumber(double electronsPerStep) const
Get the electron deposition with constant number of electrons between sampling points.
virtual void shiftInTime(float delta) override
Shift the SimHit in time.
const float * getPosArrayOut() const
Return the end point of the electron deposition in local coordinates as float array.
Class to uniquely identify a any structure of the PXD and SVD.
Abstract base class for different kinds of events.