CbmRoot
|
#include <CbmRichDigiMapManager.h>
Public Member Functions | |
Int_t | GetPixelAddressByPath (const std::string &path) |
Return digi address by path to node. | |
CbmRichPixelData * | GetPixelDataByAddress (Int_t address) |
Return CbmRichDataPixel by digi address. | |
Int_t | GetRandomPixelAddress () |
Return random address. Needed for noise digi. | |
std::vector< Int_t > | GetPixelAddresses () |
Return addresses of all pixels. | |
std::vector< Int_t > | GetPmtIds () |
Return ids for all pmts. | |
CbmRichPmtData * | GetPmtDataById (Int_t id) |
Return CbmRichDataPmt by id. | |
std::vector< Int_t > | GetNeighbourPixels (Int_t address, Int_t N, Bool_t horizontal=true, Bool_t vertical=true, Bool_t diagonal=true) |
Return the addresses of the neighbour pixels. | |
std::vector< Int_t > | GetDirectNeighbourPixels (Int_t address, Bool_t horizontal=true, Bool_t vertical=true) |
Return the addresses of the direct neighbour pixels. | |
std::vector< Int_t > | GetDiagonalNeighbourPixels (Int_t address) |
Return the addresses of the diagonal neighbour pixels. | |
std::vector< Int_t > | GetNxNNeighbourPixels (Int_t address, Int_t n) |
Return the addresses of pixels in a (2n+1)*(2n+1) grid, with the address pixel in the center of the grid. Addresses are limited to the same MAPMT as the input address. Needed for noise digis caused by charged particles. | |
virtual | ~CbmRichDigiMapManager () |
Static Public Member Functions | |
static CbmRichDigiMapManager & | GetInstance () |
Return Instance of CbmRichGeoManager. | |
Private Member Functions | |
CbmRichDigiMapManager () | |
int | getDetectorSetup (TString const nodePath) |
void | Init () |
Initialize maps. | |
CbmRichDigiMapManager (const CbmRichDigiMapManager &) | |
Copy constructor. | |
CbmRichDigiMapManager & | operator= (const CbmRichDigiMapManager &) |
Assignment operator. | |
Private Attributes | |
std::map< std::string, Int_t > | fPixelPathToAddressMap |
std::map< Int_t, CbmRichPixelData * > | fPixelAddressToDataMap |
std::vector< Int_t > | fPixelAddresses |
std::map< std::string, Int_t > | fPmtPathToIdMap |
std::map< Int_t, CbmRichPmtData * > | fPmtIdToDataMap |
std::vector< Int_t > | fPmtIds |
Definition at line 25 of file CbmRichDigiMapManager.h.
|
private |
Definition at line 32 of file CbmRichDigiMapManager.cxx.
References Init().
|
virtual |
Definition at line 43 of file CbmRichDigiMapManager.cxx.
|
private |
Copy constructor.
|
private |
Definition at line 363 of file CbmRichDigiMapManager.cxx.
Referenced by Init().
|
inline |
Return the addresses of the diagonal neighbour pixels.
address | Pixel address |
Definition at line 93 of file CbmRichDigiMapManager.h.
References GetNeighbourPixels().
Referenced by CbmRichDigitizer::AddCrossTalk().
|
inline |
Return the addresses of the direct neighbour pixels.
address | Pixel address |
Definition at line 84 of file CbmRichDigiMapManager.h.
References GetNeighbourPixels().
Referenced by CbmRichDigitizer::AddCrossTalk().
|
inlinestatic |
Return Instance of CbmRichGeoManager.
Definition at line 33 of file CbmRichDigiMapManager.h.
Referenced by CbmRichDigitizer::AddChargedParticleCluster(), CbmRichDigitizer::AddCrossTalk(), CbmRichDigitizer::AddDarkRateNoise(), CbmRichDigitizer::AddEventNoise(), CbmRichGeoTest::DrawPmtPoint(), CbmRichGeoTest::DrawPmts(), CbmRichDigiQa::Exec(), CbmLitFieldQa::FillRichPmtPlaneBHistos(), CbmRichUtil::GetPmtHistBins(), CbmRichDigiQa::Init(), CbmRichDigitizer::Init(), CbmRichHitProducer::Init(), CbmRich::Initialize(), CbmRichUrqmdTest::NofHitsAndPoints(), CbmRichHitProducer::ProcessDigi(), CbmRichMCbmHitProducer::ProcessDigi(), and CbmRich::ProcessHits().
vector< Int_t > CbmRichDigiMapManager::GetNeighbourPixels | ( | Int_t | address, |
Int_t | N, | ||
Bool_t | horizontal = true, | ||
Bool_t | vertical = true, | ||
Bool_t | diagonal = true ) |
Return the addresses of the neighbour pixels.
address | Pixel address |
n | Size of the grid (2n+1)*(2n+1) |
horizontal | return horizontal neighbours |
vertical | return vertical neighbours |
diagonal | return diagonal neighbours |
Definition at line 325 of file CbmRichDigiMapManager.cxx.
References CbmRichPmtData::fPixelAddresses, CbmRichPixelData::fPixelId, CbmRichPixelData::fPmtId, GetPixelDataByAddress(), and GetPmtDataById().
Referenced by GetDiagonalNeighbourPixels(), GetDirectNeighbourPixels(), and GetNxNNeighbourPixels().
|
inline |
Return the addresses of pixels in a (2n+1)*(2n+1) grid, with the address pixel in the center of the grid. Addresses are limited to the same MAPMT as the input address. Needed for noise digis caused by charged particles.
address | Pixel address |
n | Size of the grid (2n+1)*(2n+1) |
Definition at line 106 of file CbmRichDigiMapManager.h.
References GetNeighbourPixels().
Referenced by CbmRichDigitizer::AddChargedParticleCluster().
Int_t CbmRichDigiMapManager::GetPixelAddressByPath | ( | const std::string & | path | ) |
Return digi address by path to node.
Definition at line 287 of file CbmRichDigiMapManager.cxx.
References fPixelPathToAddressMap.
Referenced by CbmRich::ProcessHits().
vector< Int_t > CbmRichDigiMapManager::GetPixelAddresses | ( | ) |
Return addresses of all pixels.
Definition at line 311 of file CbmRichDigiMapManager.cxx.
References fPixelAddresses.
Referenced by CbmRichDigitizer::AddDarkRateNoise(), CbmRichDigitizer::AddEventNoise(), CbmRichGeoTest::DrawPmts(), and CbmLitFieldQa::FillRichPmtPlaneBHistos().
CbmRichPixelData * CbmRichDigiMapManager::GetPixelDataByAddress | ( | Int_t | address | ) |
Return CbmRichDataPixel by digi address.
Definition at line 296 of file CbmRichDigiMapManager.cxx.
References fPixelAddressToDataMap.
Referenced by CbmRichGeoTest::DrawPmtPoint(), CbmRichGeoTest::DrawPmts(), CbmRichDigiQa::Exec(), CbmLitFieldQa::FillRichPmtPlaneBHistos(), GetNeighbourPixels(), CbmRichUrqmdTest::NofHitsAndPoints(), CbmRichHitProducer::ProcessDigi(), and CbmRichMCbmHitProducer::ProcessDigi().
CbmRichPmtData * CbmRichDigiMapManager::GetPmtDataById | ( | Int_t | id | ) |
Return CbmRichDataPmt by id.
Definition at line 317 of file CbmRichDigiMapManager.cxx.
References fPmtIdToDataMap.
Referenced by CbmRichGeoTest::DrawPmtPoint(), GetNeighbourPixels(), CbmRichUtil::GetPmtHistBins(), and CbmRichUrqmdTest::NofHitsAndPoints().
vector< Int_t > CbmRichDigiMapManager::GetPmtIds | ( | ) |
Return ids for all pmts.
Definition at line 314 of file CbmRichDigiMapManager.cxx.
References fPmtIds.
Referenced by CbmRichGeoTest::DrawPmts(), CbmRichUtil::GetPmtHistBins(), and CbmRichUrqmdTest::NofHitsAndPoints().
Int_t CbmRichDigiMapManager::GetRandomPixelAddress | ( | ) |
Return random address. Needed for noise digi.
Definition at line 304 of file CbmRichDigiMapManager.cxx.
References fPixelAddresses.
Referenced by CbmRichDigitizer::AddDarkRateNoise(), and CbmRichDigitizer::AddEventNoise().
|
private |
Initialize maps.
Definition at line 45 of file CbmRichDigiMapManager.cxx.
References CbmRichPixelData::fAddress, CbmRichPmtData::fHeight, CbmRichPmtData::fId, fPixelAddresses, CbmRichPmtData::fPixelAddresses, fPixelAddressToDataMap, fPixelPathToAddressMap, CbmRichPixelData::fPmtId, fPmtIds, fPmtIdToDataMap, fPmtPathToIdMap, CbmRichPmtData::fWidth, CbmRichPixelData::fX, CbmRichPmtData::fX, CbmRichPixelData::fY, CbmRichPmtData::fY, CbmRichPixelData::fZ, CbmRichPmtData::fZ, getDetectorSetup(), shape, CbmRichPmtData::ToString(), x, and y.
Referenced by CbmRichDigiMapManager().
|
private |
Assignment operator.
|
private |
Definition at line 117 of file CbmRichDigiMapManager.h.
Referenced by GetPixelAddresses(), GetRandomPixelAddress(), and Init().
|
private |
Definition at line 116 of file CbmRichDigiMapManager.h.
Referenced by GetPixelDataByAddress(), and Init().
|
private |
Definition at line 115 of file CbmRichDigiMapManager.h.
Referenced by GetPixelAddressByPath(), and Init().
|
private |
Definition at line 121 of file CbmRichDigiMapManager.h.
Referenced by GetPmtIds(), and Init().
|
private |
Definition at line 120 of file CbmRichDigiMapManager.h.
Referenced by GetPmtDataById(), and Init().
|
private |
Definition at line 119 of file CbmRichDigiMapManager.h.
Referenced by Init().