CbmRoot
|
#include <CbmMuchClustering.h>
Public Member Functions | |
CbmMuchClustering (const char *digiFileName) | |
virtual | ~CbmMuchClustering () |
virtual InitStatus | Init () |
virtual void | Exec (Option_t *opt) |
virtual void | Finish () |
void | SetAlgorithmVersion (Int_t AlgorithmVersion) |
void | CreateModulesGeometryArray () |
void | SetDigiCharges () |
void | ClearDigiCharges () |
void | ClusteringMainFunction () |
Private Member Functions | |
void | ReadDataBranches () |
void | ClusteringA1 (CbmClusteringGeometry *m1, CbmMuchModuleGem *m2, Int_t Ver) |
void | ClusteringSL (CbmClusteringGeometry *m1, CbmMuchModuleGem *m2, Int_t Ver) |
void | ClusteringWard (CbmClusteringGeometry *m1, CbmMuchModuleGem *m2) |
CbmMuchClustering (const CbmMuchClustering &) | |
CbmMuchClustering & | operator= (const CbmMuchClustering &) |
ClassDef (CbmMuchClustering, 1) | |
Private Attributes | |
Int_t | fAlgorithmVersion |
Int_t | fNofModules |
Int_t | fNofClusters |
CbmMuchGeoScheme * | fScheme |
TString | fDigiFile |
std::vector< CbmClusteringGeometry * > | fModulesGeometryArray |
std::map< Int_t, Int_t > | fModulesByDetId |
CbmDigiManager * | fDigiMan = nullptr |
TClonesArray * | fCluster |
Interface to digi data. More... | |
TClonesArray * | fHit |
Int_t | fNofEvents |
Definition at line 28 of file CbmMuchClustering.h.
CbmMuchClustering::CbmMuchClustering | ( | const char * | digiFileName | ) |
Definition at line 49 of file CbmMuchClustering.cxx.
References fAlgorithmVersion, fNofEvents, and fNofModules.
|
virtual |
Definition at line 62 of file CbmMuchClustering.cxx.
|
private |
|
private |
void CbmMuchClustering::ClearDigiCharges | ( | ) |
Definition at line 194 of file CbmMuchClustering.cxx.
References fDigiMan, fModulesByDetId, fModulesGeometryArray, CbmDigiManager::Get(), CbmMuchDigi::GetChannelId(), CbmMuchAddress::GetElementAddress(), CbmDigiManager::GetNofDigis(), kMuch, and kMuchModule.
Referenced by Exec().
|
private |
Definition at line 243 of file CbmMuchClustering.cxx.
References CbmCluster::AddDigis(), fCluster, fDigiMan, fHit, fNofClusters, fScheme, CbmDigiManager::Get(), CbmMuchDigi::GetAdc(), CbmMuchDigi::GetAddress(), CbmMuchDigi::GetChannelId(), CbmMuchDigi::GetDTime(), CbmMuchPad::GetDx(), CbmMuchPad::GetDxy(), CbmMuchPad::GetDy(), CbmMuchAddress::GetElementAddress(), CbmMuchGeoScheme::GetLayerSideNr(), CbmClusteringA1::GetNofClusters(), CbmClusteringA1::GetNofPads(), CbmMuchModuleGem::GetPad(), CbmClusteringA1::GetPadInCluster(), CbmMuchModule::GetPosition(), CbmMuchDigi::GetTime(), CbmClusteringA1::GetX0(), CbmClusteringA1::GetY0(), kMuchModule, CbmClusteringA1::MainClusteringA1(), sqrt(), x, and y.
Referenced by ClusteringMainFunction().
void CbmMuchClustering::ClusteringMainFunction | ( | ) |
Definition at line 208 of file CbmMuchClustering.cxx.
References ClusteringA1(), ClusteringSL(), fAlgorithmVersion, fModulesGeometryArray, fNofModules, fScheme, and CbmMuchGeoScheme::GetModuleByDetId().
Referenced by Exec().
|
private |
Definition at line 307 of file CbmMuchClustering.cxx.
References CbmCluster::AddDigis(), fCluster, fDigiMan, fHit, fNofClusters, fScheme, CbmDigiManager::Get(), CbmMuchDigi::GetAdc(), CbmMuchDigi::GetAddress(), CbmMuchDigi::GetChannelId(), CbmMuchDigi::GetDTime(), CbmMuchPad::GetDx(), CbmMuchPad::GetDxy(), CbmMuchPad::GetDy(), CbmMuchAddress::GetElementAddress(), CbmMuchGeoScheme::GetLayerSideNr(), CbmClusteringSL::GetNofClusters(), CbmClusteringSL::GetNofPads(), CbmMuchModuleGem::GetPad(), CbmClusteringSL::GetPadInCluster(), CbmMuchModule::GetPosition(), CbmMuchDigi::GetTime(), CbmClusteringSL::GetX0(), CbmClusteringSL::GetY0(), kMuchModule, CbmClusteringSL::MainClusteringSL(), sqrt(), x, and y.
Referenced by ClusteringMainFunction().
|
private |
Definition at line 371 of file CbmMuchClustering.cxx.
References CbmCluster::AddDigis(), fCluster, fDigiMan, fHit, fNofClusters, fScheme, CbmDigiManager::Get(), CbmMuchDigi::GetADCCharge(), CbmMuchDigi::GetChannelId(), CbmMuchModule::GetDetectorId(), CbmMuchDigi::GetDTime(), CbmMuchPad::GetDxy(), CbmMuchGeoScheme::GetLayerSideNr(), CbmClusteringWard::GetNofClusters(), CbmClusteringWard::GetNofPads(), CbmMuchModuleGem::GetPad(), CbmClusteringWard::GetPadInCluster(), CbmMuchModule::GetPosition(), CbmMuchDigi::GetTime(), CbmClusteringWard::GetX0(), CbmClusteringWard::GetY0(), sqrt(), CbmClusteringWard::WardMainFunction(), x, and y.
void CbmMuchClustering::CreateModulesGeometryArray | ( | ) |
Definition at line 140 of file CbmMuchClustering.cxx.
References fModulesByDetId, fModulesGeometryArray, fNofModules, fScheme, CbmMuchStation::GetLayer(), CbmMuchStation::GetNLayers(), CbmMuchLayerSide::GetNModules(), CbmMuchGeoScheme::GetNStations(), CbmMuchLayer::GetSideB(), CbmMuchLayer::GetSideF(), and CbmMuchGeoScheme::GetStation().
Referenced by Init().
|
virtual |
Definition at line 92 of file CbmMuchClustering.cxx.
References ClearDigiCharges(), ClusteringMainFunction(), fCluster, fDigiMan, fHit, fNofClusters, fNofEvents, CbmDigiManager::GetNofDigis(), kMuch, and SetDigiCharges().
|
virtual |
Definition at line 119 of file CbmMuchClustering.cxx.
|
virtual |
Definition at line 73 of file CbmMuchClustering.cxx.
References CreateModulesGeometryArray(), fDigiFile, fScheme, CbmMuchGeoScheme::Init(), and ReadDataBranches().
|
private |
|
private |
Definition at line 123 of file CbmMuchClustering.cxx.
References fCluster, fDigiMan, fHit, CbmDigiManager::Init(), and CbmDigiManager::Instance().
Referenced by Init().
|
inline |
Definition at line 36 of file CbmMuchClustering.h.
References fAlgorithmVersion.
void CbmMuchClustering::SetDigiCharges | ( | ) |
Definition at line 179 of file CbmMuchClustering.cxx.
References fDigiMan, fModulesByDetId, fModulesGeometryArray, CbmDigiManager::Get(), CbmMuchDigi::GetAdc(), CbmMuchDigi::GetAddress(), CbmMuchAddress::GetElementAddress(), CbmDigiManager::GetNofDigis(), kMuch, and kMuchModule.
Referenced by Exec().
|
private |
Definition at line 55 of file CbmMuchClustering.h.
Referenced by CbmMuchClustering(), ClusteringMainFunction(), and SetAlgorithmVersion().
|
private |
Interface to digi data.
Definition at line 66 of file CbmMuchClustering.h.
Referenced by ClusteringA1(), ClusteringSL(), ClusteringWard(), Exec(), ReadDataBranches(), and ~CbmMuchClustering().
|
private |
Definition at line 60 of file CbmMuchClustering.h.
Referenced by Init().
|
private |
Definition at line 65 of file CbmMuchClustering.h.
Referenced by ClearDigiCharges(), ClusteringA1(), ClusteringSL(), ClusteringWard(), Exec(), ReadDataBranches(), and SetDigiCharges().
|
private |
Definition at line 67 of file CbmMuchClustering.h.
Referenced by ClusteringA1(), ClusteringSL(), ClusteringWard(), Exec(), ReadDataBranches(), and ~CbmMuchClustering().
|
private |
Definition at line 63 of file CbmMuchClustering.h.
Referenced by ClearDigiCharges(), CreateModulesGeometryArray(), and SetDigiCharges().
|
private |
Definition at line 62 of file CbmMuchClustering.h.
Referenced by ClearDigiCharges(), ClusteringMainFunction(), CreateModulesGeometryArray(), and SetDigiCharges().
|
private |
Definition at line 57 of file CbmMuchClustering.h.
Referenced by ClusteringA1(), ClusteringSL(), ClusteringWard(), and Exec().
|
private |
Definition at line 68 of file CbmMuchClustering.h.
Referenced by CbmMuchClustering(), and Exec().
|
private |
Definition at line 56 of file CbmMuchClustering.h.
Referenced by CbmMuchClustering(), ClusteringMainFunction(), and CreateModulesGeometryArray().
|
private |
Definition at line 59 of file CbmMuchClustering.h.
Referenced by ClusteringA1(), ClusteringMainFunction(), ClusteringSL(), ClusteringWard(), CreateModulesGeometryArray(), and Init().