G4OCCT 0.1.0
Geant4 interface to Open CASCADE Technology (OCCT) geometry definitions
Loading...
Searching...
No Matches
G4OCCTSensitiveDetectorMapReader Class Reference

Parses an XML sensitive-detector-map file into a G4OCCTSensitiveDetectorMap. More...

#include <G4OCCTSensitiveDetectorMapReader.hh>

Public Member Functions

 G4OCCTSensitiveDetectorMapReader ()=default
 
 ~G4OCCTSensitiveDetectorMapReader ()=default
 
G4OCCTSensitiveDetectorMap ReadFile (const G4String &path)
 

Detailed Description

Parses an XML sensitive-detector-map file into a G4OCCTSensitiveDetectorMap.

Reads a simple XML file and resolves sensitive detector names via G4SDManager. This reader must be called after all sensitive detectors have been registered in G4SDManager.

File format

The root element must be <sensitive_detector_map>. Each child <volume> element carries two required attributes:

  • name — volume name pattern used for matching (see G4OCCTSensitiveDetectorMap for matching rules).
  • sensDet — the sensitive detector name as registered in G4SDManager (i.e. the string passed to G4SDManager::AddNewDetector()).
<sensitive_detector_map>
<volume name="Absorber" sensDet="AbsorberSD"/>
<volume name="Gap" sensDet="GapSD"/>
</sensitive_detector_map>

Error codes

Code Condition
G4OCCT_SDReader000 <volume> element missing name attribute
G4OCCT_SDReader001 <volume> element missing sensDet attribute
G4OCCT_SDReader002 SD name not found in G4SDManager
G4OCCT_SDReader003 Xerces XMLException during parse
G4OCCT_SDReader004 Xerces DOMException during parse
G4OCCT_SDReader005 Null DOM document after parse
G4OCCT_SDReader006 Null root element
G4OCCT_SDReader007 Wrong root tag (not sensitive_detector_map)

Usage

// After SDs are registered:
G4OCCTSensitiveDetectorMap sdMap = reader.ReadFile("sd_map.xml");
Parses an XML sensitive-detector-map file into a G4OCCTSensitiveDetectorMap.
G4OCCTSensitiveDetectorMap ReadFile(const G4String &path)
Maps volume name patterns to Geant4 G4VSensitiveDetector objects.

Definition at line 59 of file G4OCCTSensitiveDetectorMapReader.hh.

Constructor & Destructor Documentation

◆ G4OCCTSensitiveDetectorMapReader()

G4OCCTSensitiveDetectorMapReader::G4OCCTSensitiveDetectorMapReader ( )
default

◆ ~G4OCCTSensitiveDetectorMapReader()

G4OCCTSensitiveDetectorMapReader::~G4OCCTSensitiveDetectorMapReader ( )
default

Member Function Documentation

◆ ReadFile()

G4OCCTSensitiveDetectorMap G4OCCTSensitiveDetectorMapReader::ReadFile ( const G4String &  path)

Parse the sensitive-detector-map XML file at path and return the populated map.

Must be called after all sensitive detectors have been registered in G4SDManager.

Parameters
pathFilesystem path to the XML sensitive-detector-map file.
Returns
G4OCCTSensitiveDetectorMap with one entry per <volume> element.
Exceptions
G4Exception(FatalException) on any parse or resolution error.

Definition at line 32 of file G4OCCTSensitiveDetectorMapReader.cc.

References G4OCCTSensitiveDetectorMap::Add().


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