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. | |
TClonesArray * | fHit |
Int_t | fNofEvents |
Definition at line 30 of file CbmMuchClustering.h.
CbmMuchClustering::CbmMuchClustering | ( | const char * | digiFileName | ) |
Definition at line 53 of file CbmMuchClustering.cxx.
References fAlgorithmVersion, fNofEvents, and fNofModules.
|
virtual |
Definition at line 67 of file CbmMuchClustering.cxx.
|
private |
|
private |
void CbmMuchClustering::ClearDigiCharges | ( | ) |
Definition at line 199 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 244 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 212 of file CbmMuchClustering.cxx.
References ClusteringA1(), ClusteringSL(), fAlgorithmVersion, fModulesGeometryArray, fNofModules, fScheme, and CbmMuchGeoScheme::GetModuleByDetId().
Referenced by Exec().
|
private |
Definition at line 304 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 364 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 148 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 108 of file CbmMuchClustering.cxx.
References ClearDigiCharges(), ClusteringMainFunction(), fCluster, fDigiMan, fHit, fNofClusters, fNofEvents, CbmDigiManager::GetNofDigis(), kMuch, and SetDigiCharges().
|
virtual |
Definition at line 134 of file CbmMuchClustering.cxx.
|
virtual |
Save old global file and folder pointer to avoid messing with FairRoot
Restore old global file and folder pointer to avoid messing with FairRoot
Definition at line 79 of file CbmMuchClustering.cxx.
References CreateModulesGeometryArray(), fDigiFile, fScheme, CbmMuchGeoScheme::Init(), and ReadDataBranches().
|
private |
|
private |
Definition at line 136 of file CbmMuchClustering.cxx.
References fCluster, fDigiMan, fHit, CbmDigiManager::Init(), and CbmDigiManager::Instance().
Referenced by Init().
|
inline |
Definition at line 38 of file CbmMuchClustering.h.
References fAlgorithmVersion.
void CbmMuchClustering::SetDigiCharges | ( | ) |
Definition at line 186 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().