Go to the documentation of this file.
21 #include "FairRootManager.h"
31 : fA1(), fA2(), fS(), fClusters(), fNumbersOfPads() {
48 for (Int_t iPad = 0; iPad <
fNofPads; iPad++) {
78 for (Int_t iPad = 0; iPad <
fNofPads; iPad++) {
81 if (algVersion == 1) {
88 if (algVersion == 2) {
96 if ((algVersion != 1) && (algVersion != 2)) {
97 std::cout <<
"Error! Unsupported version of the algorithm.\n";
99 fA2[localMaximum] +=
fA1[iPad];
101 if (iPad != localMaximum) {
129 for (Int_t iPad = 0; iPad <
fNofPads; iPad++) {
130 if ((
fA2[iPad] != 0) && (
fS[iPad] == 1)) {
133 Int_t padInCluster = 0;
134 for (Int_t nPad = 0; nPad <
fNofPads; nPad++) {
157 for (Int_t iCl = 0; iCl < nomCl; iCl++) {
159 cout <<
" - MainClusteringA1: Warning! DIVISION ON ZERO!";
174 Int_t nofNeighbors = 0;
177 for (Int_t iPad = 0; iPad < nofNeighbors; iPad++) {
180 moduleGeo, moduleGeo->
GetNeighbor(nPad, iPad), Cl0, Cl1, vers);
Float_t GetX0(Int_t iCluster)
Float_t GetX0(Int_t iPad)
virtual ~CbmClusteringA1()
Int_t GetGoodNeighborsNum(Int_t iPad)
Int_t GetNeighbor(Int_t iPad, Int_t iNeighbor)
Int_t GetPadInCluster(Int_t iCluster, Int_t iPad)
void MainClusteringA1(CbmClusteringGeometry *moduleGeo, Int_t algVersion)
void ChangeClusters(CbmClusteringGeometry *moduleGeo, Int_t nPad, Int_t Cl0, Int_t Cl1, Int_t algVersion)
Int_t GetNeighborsNum(Int_t iPad)
std::vector< Int_t > fPadsInCluster
std::vector< Int_t > GetPads(Int_t iCluster)
Float_t GetY0(Int_t iCluster)
UInt_t GetPadCharge(Int_t iCluster, Int_t iPad)
UInt_t GetPadCharge(Int_t iPad)
Int_t GetCluster(Int_t iCluster)
Float_t GetY0(Int_t iPad)
Class for pixel hits in MUCH detector.
Int_t GetDigiNum(Int_t iPad)
std::vector< Int_t > fNPadsInCluster
Int_t GetNPadInCluster(Int_t iCluster, Int_t iPad)
UInt_t GetClCharge(Int_t iCluster)
std::vector< Int_t > fPadsCharges
Int_t GetAPadsNom() const
Data class for a reconstructed hit in the STS.