CbmRoot
|
#include <CbmClusteringWard.h>
Classes | |
struct | Cluster |
struct | ClusterBlock |
Public Member Functions | |
CbmClusteringWard () | |
Constructor. More... | |
CbmClusteringWard (CbmClusteringGeometry *moduleGeo, Int_t blockSize) | |
virtual | ~CbmClusteringWard () |
Destructor. More... | |
Float_t | WardDistance (Int_t iPad1, Int_t iPad2) |
void | WardCreate (CbmClusteringGeometry *moduleGeo) |
void | AddClusterInBlock (CbmClusteringGeometry *moduleGeo, Int_t newCluster, Int_t addedCluster) |
Bool_t | WardBlockCreateStep (CbmClusteringGeometry *moduleGeo, Int_t wardStep, Bool_t wardStepRec, Int_t addedPad) |
void | WardBlockCreate (CbmClusteringGeometry *moduleGeo) |
void | DeleteCluaster (Int_t clusterNumber) |
void | WardDistanceRecalculation (Int_t clusterNumber) |
Float_t | XCenterRecalculation (Int_t cl1, Int_t cl2) |
Float_t | YCenterRecalculation (Int_t cl1, Int_t cl2) |
void | WardProcessingData (Float_t maxDistance) |
void | GetClustersFromBlock () |
void | WardMainFunction (CbmClusteringGeometry *moduleGeo, Float_t maxDistance) |
Int_t | GetNofClusters () const |
Int_t | GetNofAPads () const |
Int_t | GetNofPads () const |
Int_t | GetCluster (Int_t iCluster) |
Float_t | GetX0 (Int_t iCluster) |
Float_t | GetY0 (Int_t iCluster) |
UInt_t | GetClCharge (Int_t iCluster) |
Int_t | GetNofPads (Int_t iCluster) |
Int_t | GetPadInCluster (Int_t iCluster, Int_t iPad) |
Private Member Functions | |
CbmClusteringWard (const CbmClusteringWard &) | |
CbmClusteringWard & | operator= (const CbmClusteringWard &) |
Private Attributes | |
Int_t | BLOCK_SIZE |
Int_t | MAX_NEIGHBORS |
Int_t | fNofPads |
Int_t | fNofActivePads |
Bool_t * | fS |
Int_t * | fNumbersOfPads |
CbmClusteringGeometry * | fModuleGeo |
Int_t | fNofClusters |
ClusterBlock * | fClustersInBlock |
Int_t * | padsInClusters |
Int_t | clustersInMethod |
Int_t | clustersInMethod_2 |
Bool_t * | wardActivePads |
Int_t | firstBlockElement |
Int_t | listValue |
Cluster * | fClusters |
Definition at line 19 of file CbmClusteringWard.h.
CbmClusteringWard::CbmClusteringWard | ( | ) |
Constructor.
Definition at line 31 of file CbmClusteringWard.cxx.
References fNofActivePads, fNofClusters, and fNofPads.
CbmClusteringWard::CbmClusteringWard | ( | CbmClusteringGeometry * | moduleGeo, |
Int_t | blockSize | ||
) |
Definition at line 50 of file CbmClusteringWard.cxx.
References BLOCK_SIZE, CbmClusteringWard::ClusterBlock::clCharge, clustersInMethod, clustersInMethod_2, fClusters, fClustersInBlock, firstBlockElement, fNofActivePads, fNofClusters, fNofPads, fNumbersOfPads, fS, CbmClusteringGeometry::GetAPadsNom(), CbmClusteringGeometry::GetNPads(), CbmClusteringGeometry::GetPadCharge(), CbmClusteringWard::ClusterBlock::linkToDesignation, listValue, MAX_NEIGHBORS, CbmClusteringWard::ClusterBlock::neighbors, CbmClusteringWard::ClusterBlock::nofCluster, CbmClusteringWard::ClusterBlock::nofNeighbors, CbmClusteringWard::ClusterBlock::nofPads, padsInClusters, CbmClusteringWard::ClusterBlock::S, wardActivePads, CbmClusteringWard::ClusterBlock::wardDistances, CbmClusteringWard::ClusterBlock::xc, and CbmClusteringWard::ClusterBlock::yc.
|
virtual |
Destructor.
Definition at line 118 of file CbmClusteringWard.cxx.
|
private |
void CbmClusteringWard::AddClusterInBlock | ( | CbmClusteringGeometry * | moduleGeo, |
Int_t | newCluster, | ||
Int_t | addedCluster | ||
) |
Definition at line 191 of file CbmClusteringWard.cxx.
References CbmClusteringWard::ClusterBlock::clCharge, fClustersInBlock, CbmClusteringGeometry::GetDigiNum(), CbmClusteringGeometry::GetGoodNeighborsNum(), CbmClusteringGeometry::GetPadCharge(), CbmClusteringGeometry::GetX0(), CbmClusteringGeometry::GetY0(), CbmClusteringWard::ClusterBlock::linkToDesignation, CbmClusteringWard::ClusterBlock::nofCluster, CbmClusteringWard::ClusterBlock::nofNeighbors, CbmClusteringWard::ClusterBlock::nofPads, CbmClusteringWard::ClusterBlock::padsInCluster, padsInClusters, CbmClusteringWard::ClusterBlock::xc, and CbmClusteringWard::ClusterBlock::yc.
Referenced by WardBlockCreate(), and WardBlockCreateStep().
void CbmClusteringWard::DeleteCluaster | ( | Int_t | clusterNumber | ) |
Definition at line 374 of file CbmClusteringWard.cxx.
References CbmClusteringWard::ClusterBlock::clCharge, fClustersInBlock, fNofClusters, CbmClusteringWard::ClusterBlock::linkToDesignation, CbmClusteringWard::ClusterBlock::neighbors, CbmClusteringWard::ClusterBlock::nofCluster, CbmClusteringWard::ClusterBlock::nofNeighbors, CbmClusteringWard::ClusterBlock::nofPads, CbmClusteringWard::ClusterBlock::S, CbmClusteringWard::ClusterBlock::wardDistances, CbmClusteringWard::ClusterBlock::xc, and CbmClusteringWard::ClusterBlock::yc.
Referenced by WardProcessingData().
UInt_t CbmClusteringWard::GetClCharge | ( | Int_t | iCluster | ) |
Definition at line 748 of file CbmClusteringWard.cxx.
References fClusters, and CbmClusteringWard::Cluster::sumClCharge.
Int_t CbmClusteringWard::GetCluster | ( | Int_t | iCluster | ) |
Definition at line 739 of file CbmClusteringWard.cxx.
References fClusters, and CbmClusteringWard::Cluster::nofCluster.
void CbmClusteringWard::GetClustersFromBlock | ( | ) |
Definition at line 686 of file CbmClusteringWard.cxx.
References CbmClusteringWard::ClusterBlock::clCharge, clustersInMethod, clustersInMethod_2, fClusters, fClustersInBlock, fNofClusters, i, CbmClusteringWard::ClusterBlock::nofCluster, CbmClusteringWard::Cluster::nofCluster, CbmClusteringWard::ClusterBlock::nofPads, CbmClusteringWard::Cluster::nofPads, CbmClusteringWard::ClusterBlock::padsInCluster, CbmClusteringWard::Cluster::padsInCluster, CbmClusteringWard::Cluster::sumClCharge, CbmClusteringWard::ClusterBlock::xc, CbmClusteringWard::Cluster::xc, CbmClusteringWard::ClusterBlock::yc, and CbmClusteringWard::Cluster::yc.
Referenced by WardMainFunction().
|
inline |
Definition at line 52 of file CbmClusteringWard.h.
References fNofActivePads.
|
inline |
Definition at line 51 of file CbmClusteringWard.h.
References fNofClusters.
Referenced by CbmMuchClustering::ClusteringWard().
|
inline |
Definition at line 53 of file CbmClusteringWard.h.
References fNofPads.
Referenced by CbmMuchClustering::ClusteringWard().
Int_t CbmClusteringWard::GetNofPads | ( | Int_t | iCluster | ) |
Definition at line 751 of file CbmClusteringWard.cxx.
References fClusters, and CbmClusteringWard::Cluster::nofPads.
Int_t CbmClusteringWard::GetPadInCluster | ( | Int_t | iCluster, |
Int_t | iPad | ||
) |
Definition at line 754 of file CbmClusteringWard.cxx.
References fClusters, and CbmClusteringWard::Cluster::padsInCluster.
Referenced by CbmMuchClustering::ClusteringWard().
Float_t CbmClusteringWard::GetX0 | ( | Int_t | iCluster | ) |
Definition at line 742 of file CbmClusteringWard.cxx.
References fClusters, and CbmClusteringWard::Cluster::xc.
Referenced by CbmMuchClustering::ClusteringWard().
Float_t CbmClusteringWard::GetY0 | ( | Int_t | iCluster | ) |
Definition at line 745 of file CbmClusteringWard.cxx.
References fClusters, and CbmClusteringWard::Cluster::yc.
Referenced by CbmMuchClustering::ClusteringWard().
|
private |
void CbmClusteringWard::WardBlockCreate | ( | CbmClusteringGeometry * | moduleGeo | ) |
Definition at line 280 of file CbmClusteringWard.cxx.
References AddClusterInBlock(), BLOCK_SIZE, clustersInMethod, fClustersInBlock, firstBlockElement, fNofPads, CbmClusteringGeometry::GetGoodNeighborsNum(), CbmClusteringGeometry::GetNeighbor(), i, listValue, CbmClusteringWard::ClusterBlock::neighbors, CbmClusteringWard::ClusterBlock::nofCluster, CbmClusteringWard::ClusterBlock::nofNeighbors, CbmClusteringWard::ClusterBlock::nofPads, padsInClusters, CbmClusteringWard::ClusterBlock::S, wardActivePads, WardBlockCreateStep(), WardDistance(), and CbmClusteringWard::ClusterBlock::wardDistances.
Bool_t CbmClusteringWard::WardBlockCreateStep | ( | CbmClusteringGeometry * | moduleGeo, |
Int_t | wardStep, | ||
Bool_t | wardStepRec, | ||
Int_t | addedPad | ||
) |
Definition at line 214 of file CbmClusteringWard.cxx.
References AddClusterInBlock(), BLOCK_SIZE, clustersInMethod, fNofPads, CbmClusteringGeometry::GetGoodNeighborsNum(), CbmClusteringGeometry::GetNeighbor(), listValue, and wardActivePads.
Referenced by WardBlockCreate().
void CbmClusteringWard::WardCreate | ( | CbmClusteringGeometry * | moduleGeo | ) |
Definition at line 135 of file CbmClusteringWard.cxx.
References CbmClusteringWard::ClusterBlock::clCharge, clustersInMethod, fClustersInBlock, fNofPads, CbmClusteringGeometry::GetGoodNeighborsNum(), CbmClusteringGeometry::GetNeighbor(), CbmClusteringGeometry::GetPadCharge(), CbmClusteringGeometry::GetX0(), CbmClusteringGeometry::GetY0(), CbmClusteringWard::ClusterBlock::neighbors, CbmClusteringWard::ClusterBlock::nofCluster, CbmClusteringWard::ClusterBlock::nofNeighbors, CbmClusteringWard::ClusterBlock::nofPads, CbmClusteringWard::ClusterBlock::padsInCluster, CbmClusteringWard::ClusterBlock::S, WardDistance(), CbmClusteringWard::ClusterBlock::wardDistances, CbmClusteringWard::ClusterBlock::xc, and CbmClusteringWard::ClusterBlock::yc.
Referenced by WardMainFunction().
Float_t CbmClusteringWard::WardDistance | ( | Int_t | iPad1, |
Int_t | iPad2 | ||
) |
Definition at line 125 of file CbmClusteringWard.cxx.
References fClustersInBlock.
Referenced by WardBlockCreate(), WardCreate(), and WardDistanceRecalculation().
void CbmClusteringWard::WardDistanceRecalculation | ( | Int_t | clusterNumber | ) |
Definition at line 449 of file CbmClusteringWard.cxx.
References fClustersInBlock, CbmClusteringWard::ClusterBlock::neighbors, CbmClusteringWard::ClusterBlock::nofNeighbors, CbmClusteringWard::ClusterBlock::S, WardDistance(), and CbmClusteringWard::ClusterBlock::wardDistances.
Referenced by WardProcessingData().
void CbmClusteringWard::WardMainFunction | ( | CbmClusteringGeometry * | moduleGeo, |
Float_t | maxDistance | ||
) |
Definition at line 717 of file CbmClusteringWard.cxx.
References GetClustersFromBlock(), WardCreate(), and WardProcessingData().
Referenced by CbmMuchClustering::ClusteringWard().
void CbmClusteringWard::WardProcessingData | ( | Float_t | maxDistance | ) |
!!
!!
Definition at line 509 of file CbmClusteringWard.cxx.
References CbmClusteringWard::ClusterBlock::clCharge, clustersInMethod, d, DeleteCluaster(), fClustersInBlock, fNofActivePads, fNofPads, i, CbmClusteringWard::ClusterBlock::linkToDesignation, CbmClusteringWard::ClusterBlock::neighbors, CbmClusteringWard::ClusterBlock::nofCluster, CbmClusteringWard::ClusterBlock::nofNeighbors, CbmClusteringWard::ClusterBlock::nofPads, CbmClusteringWard::ClusterBlock::padsInCluster, padsInClusters, CbmClusteringWard::ClusterBlock::S, WardDistanceRecalculation(), CbmClusteringWard::ClusterBlock::wardDistances, CbmClusteringWard::ClusterBlock::xc, XCenterRecalculation(), CbmClusteringWard::ClusterBlock::yc, and YCenterRecalculation().
Referenced by WardMainFunction().
Float_t CbmClusteringWard::XCenterRecalculation | ( | Int_t | cl1, |
Int_t | cl2 | ||
) |
Definition at line 497 of file CbmClusteringWard.cxx.
References CbmClusteringWard::ClusterBlock::clCharge, and fClustersInBlock.
Referenced by WardProcessingData().
Float_t CbmClusteringWard::YCenterRecalculation | ( | Int_t | cl1, |
Int_t | cl2 | ||
) |
Definition at line 503 of file CbmClusteringWard.cxx.
References CbmClusteringWard::ClusterBlock::clCharge, and fClustersInBlock.
Referenced by WardProcessingData().
|
private |
Definition at line 69 of file CbmClusteringWard.h.
Referenced by CbmClusteringWard(), WardBlockCreate(), and WardBlockCreateStep().
|
private |
Definition at line 109 of file CbmClusteringWard.h.
Referenced by CbmClusteringWard(), GetClustersFromBlock(), WardBlockCreate(), WardBlockCreateStep(), WardCreate(), and WardProcessingData().
|
private |
Definition at line 110 of file CbmClusteringWard.h.
Referenced by CbmClusteringWard(), and GetClustersFromBlock().
|
private |
Definition at line 126 of file CbmClusteringWard.h.
Referenced by CbmClusteringWard(), GetClCharge(), GetCluster(), GetClustersFromBlock(), GetNofPads(), GetPadInCluster(), GetX0(), and GetY0().
|
private |
Definition at line 105 of file CbmClusteringWard.h.
Referenced by AddClusterInBlock(), CbmClusteringWard(), DeleteCluaster(), GetClustersFromBlock(), WardBlockCreate(), WardCreate(), WardDistance(), WardDistanceRecalculation(), WardProcessingData(), XCenterRecalculation(), and YCenterRecalculation().
|
private |
Definition at line 114 of file CbmClusteringWard.h.
Referenced by CbmClusteringWard(), and WardBlockCreate().
|
private |
Definition at line 78 of file CbmClusteringWard.h.
|
private |
Definition at line 73 of file CbmClusteringWard.h.
Referenced by CbmClusteringWard(), GetNofAPads(), and WardProcessingData().
|
private |
Definition at line 80 of file CbmClusteringWard.h.
Referenced by CbmClusteringWard(), DeleteCluaster(), GetClustersFromBlock(), and GetNofClusters().
|
private |
Definition at line 72 of file CbmClusteringWard.h.
Referenced by CbmClusteringWard(), GetNofPads(), WardBlockCreate(), WardBlockCreateStep(), WardCreate(), and WardProcessingData().
|
private |
Definition at line 76 of file CbmClusteringWard.h.
Referenced by CbmClusteringWard().
|
private |
Definition at line 75 of file CbmClusteringWard.h.
Referenced by CbmClusteringWard().
|
private |
Definition at line 116 of file CbmClusteringWard.h.
Referenced by CbmClusteringWard(), WardBlockCreate(), and WardBlockCreateStep().
|
private |
Definition at line 70 of file CbmClusteringWard.h.
Referenced by CbmClusteringWard().
|
private |
Definition at line 108 of file CbmClusteringWard.h.
Referenced by AddClusterInBlock(), CbmClusteringWard(), WardBlockCreate(), and WardProcessingData().
|
private |
Definition at line 112 of file CbmClusteringWard.h.
Referenced by CbmClusteringWard(), WardBlockCreate(), and WardBlockCreateStep().