Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:30:25

0001 #ifndef SimG4Core_LocalFieldManager_H
0002 #define SimG4Core_LocalFieldManager_H
0003 
0004 #include "G4FieldManager.hh"
0005 
0006 namespace sim {
0007 
0008   class LocalFieldManager : public G4FieldManager {
0009   public:
0010     // ctor & dtor
0011     LocalFieldManager() : G4FieldManager() {}
0012     ~LocalFieldManager() override {}
0013     LocalFieldManager(G4Field *commonField, G4FieldManager *priFM, G4FieldManager *altFM);
0014     void ConfigureForTrack(const G4Track *trk) override;
0015     void SetVerbosity(bool flag) {
0016       fVerbosity = flag;
0017       return;
0018     }
0019 
0020   protected:
0021     //
0022     const G4FieldManager *CopyValuesAndChordFinder(G4FieldManager *fm);
0023     void print(const G4Track *trk);
0024 
0025   private:
0026     G4FieldManager *fPrimaryFM;
0027     G4FieldManager *fAlternativeFM;
0028     G4FieldManager *fCurrentFM;
0029     bool fVerbosity;
0030   };
0031 
0032 }  // namespace sim
0033 
0034 #endif