Message: Re: How to assing a Sensitive Detector for a GDML geometry Not Logged In (login)
 Next-in-Thread Next-in-Thread
 Next-in-Forum Next-in-Forum

None Re: How to assing a Sensitive Detector for a GDML geometry 

Keywords: GDML, Sensitive Detector
Forum: Geometry
Re: None How to assing a Sensitive Detector for a GDML geometry (Francisco Garcia)
Date: 03 May, 2007
From: Witek Pokorski <Witek Pokorski>

Hi Francesco,

you can either 'harcode' the assignement of your sensitive detectors after having parsed the GDML or you can use the so called 'auxiliary' information available in GDML.

In the first case you should get the pointer (by looking in the volume store) of the logical volume you want to make sensitive, as well as the pointer to your sensitive detector (by using FindSensitiveDetector method of G4SDManager) and then assign it using SetSensitiveDetector method of G4LogicalVolume. As I said, this is all independent of GDML and should be done once the whole geometry tree is in memory. Of course, you first need to instantiate all your sensitive detector classes.

In the second case, i.e. when you use auxiliary information, you can specify the names of the sensitive detectors associated with given volumes inside your GDML file. Have a look at auxiliary.gdml example file within g4gogdml example. You will still need to use the FindSensitiveDetector method to get pointers to your sensitive detectors as well as set them afterwards using SetSensitiveDetector, but the information about which detector is assign to which volume will not be hardcoded in C++ but will come from your GDML file. The GDML processor will create a map with the keys being pointers to the volumes which have auxiliary information and values being pairs of containing the type of auxiliary infomation (like SD) and the values (the name of your sensitive detector). This map you can them use to do the actual assignment.

Finally, let me mention that there exist also a possibility of extending GDML with any user-specific information you may need to store. The procedure how to do it is documented in the Manual and there is an example (SimpleExtension) provided.

Best regards, Witek

Inline Depth:
 1 1
 All All
Outline Depth:
 1 1
 2 2
 All All
Add message: (add)

 Add Message Add Message
to: "Re: How to assing a Sensitive Detector for a GDML geometry"

 Subscribe Subscribe

This site runs SLAC HyperNews version 1.11-slac-98, derived from the original HyperNews


[ Geant 4 Home | Geant 4 HyperNews | Search | Request New Forum | Feedback ]