14#ifndef CBM_ALGO_TOF_HITFINDER_H
15#define CBM_ALGO_TOF_HITFINDER_H
21#include "Math/Rotation3D.h"
22#include "Math/Vector3Dfwd.h"
33 ROOT::Math::XYZVector
pos;
63 ROOT::Math::XYZVector
weightedPos = ROOT::Math::XYZVector(0.0, 0.0, 0.0);
69 ROOT::Math::XYZVector
globalPos = ROOT::Math::XYZVector(0.0, 0.0, 0.0);
70 ROOT::Math::XYZVector
globalErr = ROOT::Math::XYZVector(0.0, 0.0, 0.0);
80 globalPos = ROOT::Math::XYZVector(0.0, 0.0, 0.0);
81 globalErr = ROOT::Math::XYZVector(0.0, 0.0, 0.0);
89 void add(ROOT::Math::XYZVector
pos,
double time,
double timeErr,
double weight, int32_t digiIndA, int32_t digiIndB)
116 ROOT::Math::Rotation3D rotMatrix = trafoCell.
rotation;
119 ROOT::Math::XYZVector hitposOffset = rotMatrix(
weightedPos);
127 ROOT::Math::XYZVector hitErrLocal;
128 hitErrLocal.SetX(trafoCell.
sizeX / std::sqrt(12.0));
144 typedef std::pair<std::vector<std::vector<CbmTofDigi*>>, std::vector<std::vector<int32_t>>>
inputType;
159 resultType operator()(std::vector<CbmTofDigi> digisIn,
const std::vector<int32_t>& digiIndexIn);
164 void SetParams(std::unique_ptr<HitFinderRpcPar> params) {
fParams = *(std::move(params)); }
Data class for expanded digital TOF information.
resultType buildClusters(inputType &input)
inputType calibrateDigis(std::vector< CbmTofDigi > &digisIn, const std::vector< int32_t > &digiIndexIn)
HitFinderRpcPar fParams
Parameter container.
resultType operator()(std::vector< CbmTofDigi > digisIn, const std::vector< int32_t > &digiIndexIn)
Build clusters out of ToF Digis and store the resulting info in a TofHit.
std::pair< std::vector< std::vector< CbmTofDigi * > >, std::vector< std::vector< int32_t > > > inputType
void SetParams(std::unique_ptr< HitFinderRpcPar > params)
Set the parameter container.
std::vector< Cluster > resultType
ROOT::Math::Rotation3D rotation
ROOT::Math::XYZVector pos
ROOT::Math::XYZVector globalErr
void add(ROOT::Math::XYZVector pos, double time, double timeErr, double weight, int32_t digiIndA, int32_t digiIndB)
void finalize(const Cell &trafoCell, const int32_t iTrafoCell, const HitFinderRpcPar &par)
void normalize(double timeErr)
std::vector< int32_t > vDigiIndRef
ROOT::Math::XYZVector weightedPos
ROOT::Math::XYZVector globalPos
std::vector< double > fvCPTotGain
std::vector< std::vector< double > > fvCPWalk
std::vector< double > fvCPTOff
std::vector< HitFinderChanPar > fChanPar