15#include "Math/Rotation3D.h"
16#include "Math/Vector3Dfwd.h"
19#include <RtypesCore.h>
21#include <boost/serialization/access.hpp>
61 Hit(int32_t address,
const ROOT::Math::XYZVector&
pos,
const ROOT::Math::XYZVector&
dpos,
double dxy, int32_t refId,
62 double eLoss,
double time = 0.,
double timeError = 0.);
78 Hit(int32_t address,
double x,
double y,
double z,
double dx,
double dy,
double dz,
double dxy, int32_t refId,
79 double time = -1.,
double timeError = -1.);
93 double X()
const {
return fX; }
94 double Y()
const {
return fY; }
95 double Z()
const {
return fZ; }
96 double Dx()
const {
return fDx; }
97 double Dy()
const {
return fDy; }
98 double Dz()
const {
return fDz; }
173 template<
class Archive>
Helper class to convert unique channel ID back and forth.
static uint32_t GetLayerId(uint32_t address)
Return layer ID from address.
A light-weight TRD hit class for online reconstruction, based on CbmTrdHit. .
void PositionError(ROOT::Math::XYZVector &dpos) const
Copies hit position error to pos.
@ kType
set type of pad layout
@ kMaxType
set type of pad on which the maximum charge is found
@ kOvfl
mark over-flow in the data
@ kRowCross
mark hit defined by 2 clusters
double fDxy
X-Y covariance of the hit [cm**2].
Hit()
Default constructor.
bool GetClassType() const
void SetTime(double time)
void SetELoss(double loss)
int32_t fRefId
some reference id (usually to cluster, digi or MC point)
void SetTimeError(double error)
double fDz
X, Y, Z errors [cm].
void SetPositionError(const ROOT::Math::XYZVector &dpos)
void SetRowCross(bool set=true)
Mark hit reconstructed between pad rows.
void SetTime(double time, double error)
void SetClassType(bool set=true)
Type of pad layout used in reconstruction R[0], T[1].
void SetOverFlow(bool set=true)
Mark overflow in one or more digits which define the hit.
void SetMaxType(bool set=true)
Extra bool definition for the hit (e.g. the type of maximum for triangular pads).
int32_t fAddress
detector unique identifier
void Position(ROOT::Math::XYZVector &pos) const
Copies hit position to pos.
void SetPosition(const ROOT::Math::XYZVector &pos)
Sets position of the hit.
void SetRefId(int32_t refId)
void serialize(Archive &ar, unsigned int)
void SetAddress(int32_t address)
double fZ
X, Y, Z positions of hit [cm].
friend class boost::serialization::access
double fTimeError
Error of hit time [ns].
double fTime
Hit time [ns].
int32_t GetPlaneId() const