2#ifndef SIMCORE_GEO_AUXINFOREADER_H
3#define SIMCORE_GEO_AUXINFOREADER_H
6#include "G4GDMLParser.hh"
12#include "Framework/Configure/Parameters.h"
13#include "Framework/Logger.h"
15namespace simcore::geo {
65 const G4GDMLAuxListType *auxInfoList);
72 void createRegion(
const G4String &name,
const G4GDMLAuxListType *auxInfoList);
86 const G4GDMLAuxListType *auxInfoList);
94 const G4GDMLAuxListType *auxInfoList);
116 std::vector<std::string> universal_visattributes_;
121 enableLogging(
"AuxInfoReader")
Class encapsulating parameters for configuring a processor.
Reads auxiliary information from GDML userinfo block.
void createDetectorHeader(const G4String &detectorVersion, const G4GDMLAuxListType *auxInfoList)
Create the detector header from the global auxinfo.
ldmx::DetectorHeader * getDetectorHeader()
Get the detector header that was created from the userinfo block.
virtual ~AuxInfoReader()
Class destructor.
void assignAuxInfoToVolumes()
Assign auxiliary info to volumes such as sensitive detectors.
void readGlobalAuxInfo()
Read the global auxiliary information from the auxinfo block.
AuxInfoReader(G4GDMLParser *parser, const framework::config::Parameters &ps)
Class constructor.
void createVisAttributes(const G4String &name, const G4GDMLAuxListType *auxInfoList)
Create visualization attributes from GDML data.
std::string color_mode_
Color mode for visattributes.
G4GDMLEvaluator * eval_
The GDML expression evaluator.
G4GDMLParser * parser_
The GDML parser.
ldmx::DetectorHeader * detector_header_
Detector header with name and version.
void createMagneticField(const G4String &name, const G4GDMLAuxListType *auxInfoList)
Create a magnetic field from GDML data.
void createRegion(const G4String &name, const G4GDMLAuxListType *auxInfoList)
Create a detector region from GDML data.
void selectColorMode(const G4String &mode)
Select the 'mode' for coloring in the visualization.