10#ifndef CBMSTSALGOFINDHITSORTHO_H
11#define CBMSTSALGOFINDHITSORTHO_H 1
76 Long64_t
Exec(
const std::vector<CbmStsCluster>& clustersF,
const std::vector<CbmStsCluster>& clustersB,
77 std::vector<CbmStsHit>&
hits, UInt_t address, Double_t timeCutSig, Double_t timeCutAbs, UInt_t nStripsF,
78 UInt_t nStripsB, Double_t pitchF, Double_t pitchB, Double_t lorentzF, Double_t lorentzB,
96 void CreateHit(Double_t xLocal, Double_t yLocal, Double_t varX, Double_t varY, Double_t varXY,
98 Double_t du = 0., Double_t dv = 0.);
131 std::pair<Int_t, Int_t>
GetStrip(UInt_t channel)
const;
173 std::vector<CbmStsHit>*
fHits =
nullptr;
static vector< vector< QAHit > > hits
Algorithm for hit finding in sensors with orthogonal strips.
Double_t fLorentzB
Lorentz shift correction back side [cm].
Double_t fDy
Active size in y [cm].
CbmStsAlgoFindHitsOrtho(const CbmStsAlgoFindHitsOrtho &)=delete
Copy constructor (disabled)
Double_t fTimeCutSig
Time cut on clusters in error units.
std::pair< Int_t, Int_t > GetStrip(UInt_t channel) const
Get strip and side from module channel.
void GetClusterPosition(Double_t ClusterCentre, Double_t &xCluster, Int_t &side)
Int_t IntersectClusters(const CbmStsCluster &clusterF, const CbmStsCluster &clusterB, UInt_t indexF, UInt_t indexB)
Find the intersection points of two clusters.
void CreateHit(Double_t xLocal, Double_t yLocal, Double_t varX, Double_t varY, Double_t varXY, const CbmStsCluster &clusterF, const CbmStsCluster &clusterB, UInt_t indexF, UInt_t indexB, Double_t du=0., Double_t dv=0.)
Create a new hit in the output array.
ClassDef(CbmStsAlgoFindHitsOrtho, 1)
Int_t GetSide(Double_t channel) const
CbmStsAlgoFindHitsOrtho & operator=(const CbmStsAlgoFindHitsOrtho &)=delete
Assignment operator (disabled)
Double_t fPitchB
Strip pitch back side [cm].
UInt_t fNofStripsB
Number of strips backs side.
Double_t fPitchF
Strip pitch front side [cm].
virtual ~CbmStsAlgoFindHitsOrtho()
Destructor
std::vector< CbmStsHit > * fHits
///< Transformation matrix to global C.S.
UInt_t fAddress
Unique address for hits (sensor)
CbmStsAlgoFindHitsOrtho()
Constructor.
Double_t fLorentzF
Lorentz shift correction front side [cm].
Double_t fTimeCutAbs
Time cut on clusters in ns.
Double_t fDx
Active size in x [cm].
UInt_t fNofStripsF
Number of strips front side.
Long64_t Exec(const std::vector< CbmStsCluster > &clustersF, const std::vector< CbmStsCluster > &clustersB, std::vector< CbmStsHit > &hits, UInt_t address, Double_t timeCutSig, Double_t timeCutAbs, UInt_t nStripsF, UInt_t nStripsB, Double_t pitchF, Double_t pitchB, Double_t lorentzF, Double_t lorentzB, TGeoHMatrix *matrix)
Execute algorithm.
Bool_t IsInside(Double_t x, Double_t y)
Check whether a point (x,y) is inside the active area.
Data class for STS clusters.
data class for a reconstructed 3-d hit in the STS
Constructional parameters of a STS sensor.