Detector ID. [message #7124] |
Fri, 25 July 2008 16:33 |
Lia Lavezzi
Messages: 291 Registered: May 2007 Location: Torino
|
first-grade participant |
From: *pv.infn.it
|
|
Hi all,
for the STT we need to set the detectorID by hand in PndStt::ProcessHits instead of taking it from the MonteCarlo id of the volume via fVolumeID = vol->getMCid() (fVolumeID --> detID, as it is now), to have
the same detID for all the tubes (both skewed and not) and indicate univocally the detector: is there some criterion we have to follow to assign the detID or can we choose any number?
...just not to set the same detID to two different detectors, which maybe could cause problems...
Thank you and ciao,
Lia.
|
|
|
|
|
|
|
Re: Detector ID. [message #7153 is a reply to message #7132] |
Mon, 04 August 2008 13:31 |
Mohammad Al-Turany
Messages: 518 Registered: April 2004 Location: GSI, Germany
|
first-grade participant |
From: *gsi.de
|
|
Hi,
I think it is useful to summarize what kind of Id's are there and how they are used tell now:
1. CbmModule has a protected member fModId which is used internally in the framework!
2. CbmDetector has a member fDetId which can be set from the detector constructor as detector identifier. e.g. In CBM there is an enum:
enum DetectorId {kREF, kMVD, kSTS, kRICH, kMUCH, kTRD, kTOF, kECAL, kZDC, kSTT,kTutDet};
these values are hardcoded in the detector constructors. e.g:
CbmRich::CbmRich() : CbmDetector("RICH", kTRUE, kRICH)
These id's are also used for the stack filtering!
3. in CbmVolume:
Int_t fVolumeId; /**Volume Id in GeoManager*/
Int_t fMCid; /**Volume Id in MC*/
these two are usually identical if you use the TGeoManager as geometry description and navigation! otherwise they could differ! they are simply the unique identifier of a volume in the geometry.
So I think we need an enum to identify the detector generally and for those detectors who need more than an integer I would do it like in the emc! so that one can find out from a point in which volume, sector, ..etc it was registered!
regards
Mohammad
|
|
|