Geant4 Cross Reference |
1 // 1 2 // ******************************************* 3 // * License and Disclaimer 4 // * 5 // * The Geant4 software is copyright of th 6 // * the Geant4 Collaboration. It is provided 7 // * conditions of the Geant4 Software License 8 // * LICENSE and available at http://cern.ch/ 9 // * include a list of copyright holders. 10 // * 11 // * Neither the authors of this software syst 12 // * institutes,nor the agencies providing fin 13 // * work make any representation or warran 14 // * regarding this software system or assum 15 // * use. Please see the license in the file 16 // * for the full disclaimer and the limitatio 17 // * 18 // * This code implementation is the result 19 // * technical work of the GEANT4 collaboratio 20 // * By using, copying, modifying or distri 21 // * any work based on the software) you ag 22 // * use in resulting scientific publicati 23 // * acceptance of all terms of the Geant4 Sof 24 // ******************************************* 25 // 26 27 #ifndef G4RTWorkerInitialization_hh 28 #define G4RTWorkerInitialization_hh 29 30 class G4UserRunAction; 31 class G4VUserPrimaryGeneratorAction; 32 class G4UserEventAction; 33 class G4UserStackingAction; 34 class G4UserTrackingAction; 35 class G4UserSteppingAction; 36 class G4RTRunAction; 37 class G4RTPrimaryGeneratorAction; 38 class G4RTTrackingAction; 39 class G4RTSteppingAction; 40 41 #include "G4Threading.hh" 42 #include "G4UserWorkerInitialization.hh" 43 44 class G4RTWorkerInitialization : public G4Use 45 { 46 public: // with description 47 G4RTWorkerInitialization(); 48 virtual ~G4RTWorkerInitialization(); 49 50 virtual void WorkerRunStart() const; 51 // This method is called before an event l 52 // already been set up for the thread. All 53 // ready to start the local event loop. Th 54 // "Idle" state in the sequential mode. 55 56 virtual void WorkerRunEnd() const; 57 // This method is called for each thread, 58 // finished but before the synchronization 59 60 private: 61 static G4ThreadLocal const G4UserRunAction 62 static G4ThreadLocal const G4VUserPrimaryG 63 static G4ThreadLocal const G4UserEventActi 64 static G4ThreadLocal const G4UserStackingA 65 static G4ThreadLocal const G4UserTrackingA 66 static G4ThreadLocal const G4UserSteppingA 67 68 static G4ThreadLocal G4RTRunAction * theRT 69 static G4ThreadLocal G4RTPrimaryGeneratorA 70 static G4ThreadLocal G4RTTrackingAction * 71 static G4ThreadLocal G4RTSteppingAction * 72 73 }; 74 75 #endif //G4RTWorkerInitialization_hh 76 77