EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
EicGeoMap Class Reference

#include <EicRoot/blob/master/eic/base/EicGeoMap.h>

+ Inheritance diagram for EicGeoMap:
+ Collaboration diagram for EicGeoMap:

Public Member Functions

 EicGeoMap ()
 
 ~EicGeoMap ()
 
unsigned GetGeantVolumeLevelNum () const
 
const GeantVolumeLevelGetGeantVolumeLevelPtr (unsigned volumeID) const
 
int AddGeantVolumeLevel (const TString &volumeName, UGeantIndex_t maxEntryNum)
 
bool IsMySignature (const unsigned lvIDs[]) const
 
const TString * GetBaseVolumePath () const
 
void AssignBaseVolumePath (const char *baseVolumePath)
 
void SetSensitivityFlag (double birkConstant=0.0)
 
bool IsSensitive () const
 
void SetSingleSensorContainerVolume (const char *singleSensorContainerVolumeName)
 
const TString & GetSingleSensorContainerVolumeName () const
 
const TString * GetInnermostVolumeName () const
 
UGeantIndex_t GetMappingTableDim () const
 
const ULogicalIndex_tGetMappingTable () const
 
double GetBirkConstant () const
 
 EicGeoMap ()
 
 ~EicGeoMap ()
 
unsigned GetGeantVolumeLevelNum () const
 
const GeantVolumeLevelGetGeantVolumeLevelPtr (unsigned volumeID) const
 
int AddGeantVolumeLevel (const TString &volumeName, UGeantIndex_t maxEntryNum)
 
bool IsMySignature (const unsigned lvIDs[]) const
 
const TString * GetBaseVolumePath () const
 
void AssignBaseVolumePath (const char *baseVolumePath)
 
void SetSensitivityFlag (double birkConstant=0.0)
 
bool IsSensitive () const
 
void SetSingleSensorContainerVolume (const char *singleSensorContainerVolumeName)
 
const TString & GetSingleSensorContainerVolumeName () const
 
const TString * GetInnermostVolumeName () const
 
UGeantIndex_t GetMappingTableDim () const
 
const ULogicalIndex_tGetMappingTable () const
 
double GetBirkConstant () const
 

Private Member Functions

int CalculateBitPattern ()
 
int SetMappingTableEntry (const unsigned geo[], ULogicalIndex_t logical)
 
int CalculateMappingTableSignature ()
 
ULogicalIndex_t GeantToLogicalIndex (UGeantIndex_t geant) const
 
 ClassDef (EicGeoMap, 16)
 
int CalculateBitPattern ()
 
int SetMappingTableEntry (const unsigned geo[], ULogicalIndex_t logical)
 
int CalculateMappingTableSignature ()
 
ULogicalIndex_t GeantToLogicalIndex (UGeantIndex_t geant) const
 
 ClassDef (EicGeoMap, 16)
 

Private Attributes

bool mSensitivityFlag
 
double mBirkConstant
 
std::vector< GeantVolumeLevel * > mGeantVolumeLevels
 
UGeantIndex_t mMappingTableDim
 
ULogicalIndex_tmMappingTable
 
TString mBaseVolumePath
 
TString mSingleSensorContainerVolumeName
 

Friends

class EicGeoParData
 

Detailed Description

Definition at line 139 of file EicGeoMap.h.

View newest version in sPHENIX GitHub at line 139 of file EicGeoMap.h

Constructor & Destructor Documentation

EicGeoMap::EicGeoMap ( )
inline

Definition at line 146 of file EicGeoMap.h.

View newest version in sPHENIX GitHub at line 146 of file EicGeoMap.h

EicGeoMap::~EicGeoMap ( )
inline

Definition at line 148 of file EicGeoMap.h.

View newest version in sPHENIX GitHub at line 148 of file EicGeoMap.h

EicGeoMap::EicGeoMap ( )
inline

Definition at line 146 of file EicGeoMap.h.

View newest version in sPHENIX GitHub at line 146 of file EicGeoMap.h

EicGeoMap::~EicGeoMap ( )
inline

Definition at line 148 of file EicGeoMap.h.

View newest version in sPHENIX GitHub at line 148 of file EicGeoMap.h

Member Function Documentation

int EicGeoMap::AddGeantVolumeLevel ( const TString &  volumeName,
UGeantIndex_t  maxEntryNum 
)

Definition at line 46 of file EicGeoMap.cxx.

View newest version in sPHENIX GitHub at line 46 of file EicGeoMap.cxx

References mGeantVolumeLevels, GeantVolumeLevel::mMaxEntryNum, GeantVolumeLevel::mVolumeName, and printf().

Referenced by b0tracker(), LqstGeoParData::constructEcalLayers(), VstGeoParData::ConstructGeometry(), FstGeoParData::ConstructGeometry(), MuMegasGeoParData::ConstructGeometry(), GemGeoParData::ConstructGeometry(), MapsGeoParData::ConstructStaveWithMapping(), LqstGeoParData::constructTrackerLayers(), femc(), hcal(), ip(), ippt(), lqst(), rich(), romanPot_v2(), rp(), tpc(), tracker(), and zdc().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int EicGeoMap::AddGeantVolumeLevel ( const TString &  volumeName,
UGeantIndex_t  maxEntryNum 
)
void EicGeoMap::AssignBaseVolumePath ( const char *  baseVolumePath)
inline

Definition at line 161 of file EicGeoMap.h.

View newest version in sPHENIX GitHub at line 161 of file EicGeoMap.h

References mBaseVolumePath.

Referenced by EicDetector::GetNodeMultiIndex().

+ Here is the caller graph for this function:

void EicGeoMap::AssignBaseVolumePath ( const char *  baseVolumePath)
inline

Definition at line 161 of file EicGeoMap.h.

View newest version in sPHENIX GitHub at line 161 of file EicGeoMap.h

References mBaseVolumePath.

int EicGeoMap::CalculateBitPattern ( )
private
int EicGeoMap::CalculateBitPattern ( )
private

Definition at line 13 of file EicGeoMap.cxx.

View newest version in sPHENIX GitHub at line 13 of file EicGeoMap.cxx

References _GEANT_INDEX_BIT_NUM_, EicBitMask< T >::GetBitNum(), GeantVolumeLevel::mBitMask, mGeantVolumeLevels, mMappingTableDim, GeantVolumeLevel::mMaxEntryNum, printf(), and EicBitMask< T >::SetShift().

Referenced by SetMappingTableEntry().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int EicGeoMap::CalculateMappingTableSignature ( )
private
int EicGeoMap::CalculateMappingTableSignature ( )
private

Definition at line 123 of file EicGeoMap.cxx.

View newest version in sPHENIX GitHub at line 123 of file EicGeoMap.cxx

References mGeantVolumeLevels, GeantVolumeLevel::mVolumeID, GeantVolumeLevel::mVolumeName, printf(), and Acts::Test::volume.

Referenced by EicGeoParData::CalculateMappingTableSignatures().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

EicGeoMap::ClassDef ( EicGeoMap  ,
16   
)
private
EicGeoMap::ClassDef ( EicGeoMap  ,
16   
)
private
ULogicalIndex_t EicGeoMap::GeantToLogicalIndex ( UGeantIndex_t  geant) const
inlineprivate

Definition at line 229 of file EicGeoMap.h.

View newest version in sPHENIX GitHub at line 229 of file EicGeoMap.h

References _LOGICAL_INDEX_INVALID_, mMappingTable, and mMappingTableDim.

ULogicalIndex_t EicGeoMap::GeantToLogicalIndex ( UGeantIndex_t  geant) const
inlineprivate

Definition at line 229 of file EicGeoMap.h.

View newest version in sPHENIX GitHub at line 229 of file EicGeoMap.h

References _LOGICAL_INDEX_INVALID_, mMappingTable, and mMappingTableDim.

const TString* EicGeoMap::GetBaseVolumePath ( ) const
inline

Definition at line 160 of file EicGeoMap.h.

View newest version in sPHENIX GitHub at line 160 of file EicGeoMap.h

References mBaseVolumePath.

Referenced by EicDetector::GetNodeMultiIndex(), and EicGeoParData::InitializeLookupTables().

+ Here is the caller graph for this function:

const TString* EicGeoMap::GetBaseVolumePath ( ) const
inline

Definition at line 160 of file EicGeoMap.h.

View newest version in sPHENIX GitHub at line 160 of file EicGeoMap.h

References mBaseVolumePath.

double EicGeoMap::GetBirkConstant ( ) const
inline

Definition at line 185 of file EicGeoMap.h.

View newest version in sPHENIX GitHub at line 185 of file EicGeoMap.h

References mBirkConstant.

double EicGeoMap::GetBirkConstant ( ) const
inline

Definition at line 185 of file EicGeoMap.h.

View newest version in sPHENIX GitHub at line 185 of file EicGeoMap.h

Referenced by EicCalorimeterDigiHitProducer::HandleHit().

+ Here is the caller graph for this function:

unsigned EicGeoMap::GetGeantVolumeLevelNum ( ) const
inline

Definition at line 150 of file EicGeoMap.h.

View newest version in sPHENIX GitHub at line 150 of file EicGeoMap.h

References mGeantVolumeLevels.

unsigned EicGeoMap::GetGeantVolumeLevelNum ( ) const
inline

Definition at line 150 of file EicGeoMap.h.

View newest version in sPHENIX GitHub at line 150 of file EicGeoMap.h

References mGeantVolumeLevels.

Referenced by EicGeoParData::CalculateMappingTableSignatures(), EicDetector::GetNodeMultiIndex(), and EicGeoParData::InitializeLookupTables().

+ Here is the caller graph for this function:

const GeantVolumeLevel* EicGeoMap::GetGeantVolumeLevelPtr ( unsigned  volumeID) const
inline

Definition at line 151 of file EicGeoMap.h.

View newest version in sPHENIX GitHub at line 151 of file EicGeoMap.h

References mGeantVolumeLevels.

Referenced by GetInnermostVolumeName(), EicDetector::GetNodeMultiIndex(), and EicGeoParData::InitializeLookupTables().

+ Here is the caller graph for this function:

const GeantVolumeLevel* EicGeoMap::GetGeantVolumeLevelPtr ( unsigned  volumeID) const
inline

Definition at line 151 of file EicGeoMap.h.

View newest version in sPHENIX GitHub at line 151 of file EicGeoMap.h

References mGeantVolumeLevels.

const TString* EicGeoMap::GetInnermostVolumeName ( ) const
inline

Definition at line 178 of file EicGeoMap.h.

View newest version in sPHENIX GitHub at line 178 of file EicGeoMap.h

References GetGeantVolumeLevelPtr(), GeantVolumeLevel::GetVolumeName(), and mGeantVolumeLevels.

Referenced by EicDetector::ConstructGeometry(), EicCalorimeterDigiHitProducer::ExtraInit(), EicCalorimeterDigiHitProducer::HandleHit(), EicDigiHitProducer::Init(), and EicGeoParData::PlaceG4Volume().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

const TString* EicGeoMap::GetInnermostVolumeName ( ) const
inline

Definition at line 178 of file EicGeoMap.h.

View newest version in sPHENIX GitHub at line 178 of file EicGeoMap.h

References GetGeantVolumeLevelPtr(), GeantVolumeLevel::GetVolumeName(), and mGeantVolumeLevels.

+ Here is the call graph for this function:

const ULogicalIndex_t* EicGeoMap::GetMappingTable ( ) const
inline

Definition at line 183 of file EicGeoMap.h.

View newest version in sPHENIX GitHub at line 183 of file EicGeoMap.h

References mMappingTable.

const ULogicalIndex_t* EicGeoMap::GetMappingTable ( ) const
inline

Definition at line 183 of file EicGeoMap.h.

View newest version in sPHENIX GitHub at line 183 of file EicGeoMap.h

References mMappingTable.

Referenced by EicGeoParData::InitializeLookupTables().

+ Here is the caller graph for this function:

UGeantIndex_t EicGeoMap::GetMappingTableDim ( ) const
inline

Definition at line 182 of file EicGeoMap.h.

View newest version in sPHENIX GitHub at line 182 of file EicGeoMap.h

References mMappingTableDim.

UGeantIndex_t EicGeoMap::GetMappingTableDim ( ) const
inline

Definition at line 182 of file EicGeoMap.h.

View newest version in sPHENIX GitHub at line 182 of file EicGeoMap.h

References mMappingTableDim.

Referenced by EicGeoParData::InitializeLookupTables().

+ Here is the caller graph for this function:

const TString& EicGeoMap::GetSingleSensorContainerVolumeName ( ) const
inline

Definition at line 174 of file EicGeoMap.h.

View newest version in sPHENIX GitHub at line 174 of file EicGeoMap.h

References mSingleSensorContainerVolumeName.

Referenced by EicGeoParData::InitializeLookupTables().

+ Here is the caller graph for this function:

const TString& EicGeoMap::GetSingleSensorContainerVolumeName ( ) const
inline

Definition at line 174 of file EicGeoMap.h.

View newest version in sPHENIX GitHub at line 174 of file EicGeoMap.h

References mSingleSensorContainerVolumeName.

bool EicGeoMap::IsMySignature ( const unsigned  lvIDs[]) const
bool EicGeoMap::IsMySignature ( const unsigned  lvIDs[]) const

Definition at line 145 of file EicGeoMap.cxx.

View newest version in sPHENIX GitHub at line 145 of file EicGeoMap.cxx

References mGeantVolumeLevels, and GeantVolumeLevel::mVolumeID.

Referenced by EicDetector::GetNodeMultiIndex().

+ Here is the caller graph for this function:

bool EicGeoMap::IsSensitive ( ) const
inline

Definition at line 167 of file EicGeoMap.h.

View newest version in sPHENIX GitHub at line 167 of file EicGeoMap.h

References mSensitivityFlag.

Referenced by EicCalorimeterDigiHitProducer::HandleHit(), and EicTrackingDigiHitProducer::HandleHit().

+ Here is the caller graph for this function:

bool EicGeoMap::IsSensitive ( ) const
inline

Definition at line 167 of file EicGeoMap.h.

View newest version in sPHENIX GitHub at line 167 of file EicGeoMap.h

References mSensitivityFlag.

int EicGeoMap::SetMappingTableEntry ( const unsigned  geo[],
ULogicalIndex_t  logical 
)
private

Definition at line 70 of file EicGeoMap.cxx.

View newest version in sPHENIX GitHub at line 70 of file EicGeoMap.cxx

References _LOGICAL_INDEX_INVALID_, CalculateBitPattern(), EicBitMask< T >::GetShift(), GeantVolumeLevel::GetVolumeName(), GeantVolumeLevel::mBitMask, mGeantVolumeLevels, mMappingTable, mMappingTableDim, GeantVolumeLevel::mMaxEntryNum, printf(), and value.

Referenced by EicGeoParData::SetMappingTableEntry().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int EicGeoMap::SetMappingTableEntry ( const unsigned  geo[],
ULogicalIndex_t  logical 
)
private
void EicGeoMap::SetSensitivityFlag ( double  birkConstant = 0.0)
inline

Definition at line 163 of file EicGeoMap.h.

View newest version in sPHENIX GitHub at line 163 of file EicGeoMap.h

References mBirkConstant, and mSensitivityFlag.

Referenced by EicCalorimeterDigiHitProducer::ExtraInit(), and EicDigiHitProducer::Init().

+ Here is the caller graph for this function:

void EicGeoMap::SetSensitivityFlag ( double  birkConstant = 0.0)
inline

Definition at line 163 of file EicGeoMap.h.

View newest version in sPHENIX GitHub at line 163 of file EicGeoMap.h

References mBirkConstant, and mSensitivityFlag.

void EicGeoMap::SetSingleSensorContainerVolume ( const char *  singleSensorContainerVolumeName)
inline

Definition at line 171 of file EicGeoMap.h.

View newest version in sPHENIX GitHub at line 171 of file EicGeoMap.h

References mSingleSensorContainerVolumeName.

void EicGeoMap::SetSingleSensorContainerVolume ( const char *  singleSensorContainerVolumeName)
inline

Definition at line 171 of file EicGeoMap.h.

View newest version in sPHENIX GitHub at line 171 of file EicGeoMap.h

References mSingleSensorContainerVolumeName.

Referenced by LqstGeoParData::constructEcalLayers(), VstGeoParData::ConstructGeometry(), FstGeoParData::ConstructGeometry(), MuMegasGeoParData::ConstructGeometry(), GemGeoParData::ConstructGeometry(), MapsGeoParData::ConstructStaveWithMapping(), LqstGeoParData::constructTrackerLayers(), femc(), hcal(), ip(), rich(), tpc(), tracker(), and zdc().

+ Here is the caller graph for this function:

Friends And Related Function Documentation

EicGeoParData
friend

Definition at line 143 of file EicGeoMap.h.

View newest version in sPHENIX GitHub at line 143 of file EicGeoMap.h

Member Data Documentation

TString EicGeoMap::mBaseVolumePath
private

Definition at line 210 of file EicGeoMap.h.

View newest version in sPHENIX GitHub at line 210 of file EicGeoMap.h

Referenced by AssignBaseVolumePath(), and GetBaseVolumePath().

double EicGeoMap::mBirkConstant
private

Definition at line 192 of file EicGeoMap.h.

View newest version in sPHENIX GitHub at line 192 of file EicGeoMap.h

Referenced by GetBirkConstant(), and SetSensitivityFlag().

std::vector< GeantVolumeLevel * > EicGeoMap::mGeantVolumeLevels
private
ULogicalIndex_t * EicGeoMap::mMappingTable
private

Definition at line 206 of file EicGeoMap.h.

View newest version in sPHENIX GitHub at line 206 of file EicGeoMap.h

Referenced by GeantToLogicalIndex(), GetMappingTable(), and SetMappingTableEntry().

UGeantIndex_t EicGeoMap::mMappingTableDim
private

Definition at line 205 of file EicGeoMap.h.

View newest version in sPHENIX GitHub at line 205 of file EicGeoMap.h

Referenced by CalculateBitPattern(), GeantToLogicalIndex(), GetMappingTableDim(), and SetMappingTableEntry().

bool EicGeoMap::mSensitivityFlag
private

Definition at line 185 of file EicGeoMap.h.

View newest version in sPHENIX GitHub at line 185 of file EicGeoMap.h

Referenced by IsSensitive(), and SetSensitivityFlag().

TString EicGeoMap::mSingleSensorContainerVolumeName
private

Definition at line 218 of file EicGeoMap.h.

View newest version in sPHENIX GitHub at line 218 of file EicGeoMap.h

Referenced by GetSingleSensorContainerVolumeName(), and SetSingleSensorContainerVolume().


The documentation for this class was generated from the following files: