| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

In This Package:

IGiGaRunManager.h

Go to the documentation of this file.
00001 //  $ID:$ 
00002 // ============================================================================
00003 // CVS tag $Name: v19r4 $ 
00004 // ============================================================================
00005 // $Log: IGiGaRunManager.h,v $
00006 // Revision 1.5  2004/04/20 04:26:05  ibelyaev
00007 //  fix bad interference between tools and Geant4
00008 //
00009 // Revision 1.4  2004/02/20 18:58:17  ibelyaev
00010 //  update in IGiGaXXX and IIDIGiGaXXX
00011 //
00012 // Revision 1.3  2002/05/07 12:21:31  ibelyaev
00013 //  see $GIGAROOT/doc/release.notes  7 May 2002
00014 //
00015 // Revision 1.2  2001/08/12 15:42:46  ibelyaev
00016 // improvements with Doxygen comments
00017 //
00018 // Revision 1.1  2001/08/01 09:42:23  ibelyaev
00019 // redesign and reimplementation of GiGaRunManager class
00020 // 
00021 // ============================================================================
00022 #ifndef GIGA_IGIGARUNMANAGER_H 
00023 #define GIGA_IGIGARUNMANAGER_H 1
00024 // ============================================================================
00025 // GiGa 
00026 #include "GiGa/IGiGaInterface.h"
00027 // forward declarations from GiGa 
00028 class     IGiGaGeoSrc                   ;
00029 // forward declarations form Geant4 
00030 class     G4VUserPrimaryGeneratorAction ;
00031 class     G4VUserDetectorConstruction   ;
00032 class     G4VUserPhysicsList            ;
00033 class     G4UserRunAction               ;
00034 class     G4UserEventAction             ;
00035 class     G4UserStackingAction          ;
00036 class     G4UserSteppingAction          ;
00037 class     G4UserTrackingAction          ;
00038 class     G4VPhysicalVolume             ;
00039 class     G4PrimaryVertex               ;
00040 class     G4Event                       ;
00041 class     G4UIsession                   ;
00042 
00051 class IGiGaRunManager: virtual public IGiGaInterface
00052 {  
00053   
00054 public:
00055   
00059   static const InterfaceID& interfaceID () ;
00060   
00065   virtual StatusCode declare( G4VUserPrimaryGeneratorAction  * obj )  = 0 ;
00066   
00071   virtual StatusCode declare( G4VPhysicalVolume              * obj ) = 0 ;
00072 
00077   virtual StatusCode declare( G4VUserDetectorConstruction    * obj ) = 0 ;
00078 
00083   virtual StatusCode declare( G4VUserPhysicsList             * obj ) = 0 ;
00084 
00089   virtual StatusCode declare( IGiGaGeoSrc                    * obj ) = 0 ;
00090 
00095   virtual StatusCode declare( G4UserRunAction                * obj ) = 0 ;
00096 
00101   virtual StatusCode declare( G4UserEventAction              * obj ) = 0 ;
00102 
00107   virtual StatusCode declare( G4UserStackingAction           * obj ) = 0 ;
00108 
00113   virtual StatusCode declare( G4UserSteppingAction           * obj ) = 0 ;
00114 
00119   virtual StatusCode declare( G4UserTrackingAction           * obj ) = 0 ;
00120 
00125   virtual StatusCode  prepareTheEvent ( G4PrimaryVertex    * vertex = 0 ) = 0 ; 
00126 
00130   virtual StatusCode  processTheEvent (                                 ) = 0 ; 
00131 
00136   virtual StatusCode  retrieveTheEvent( const G4Event      *& event     ) = 0 ;
00137 
00142   virtual StatusCode declare( G4UIsession                    * obj     ) = 0 ;
00143   
00144   
00148   static IGiGaRunManager* instance () ;
00149   
00153   static StatusCode       destroy  () ;
00154   
00155 protected:
00156   
00158   virtual ~IGiGaRunManager() ; 
00159   
00160 protected: 
00161   
00165   static StatusCode setInstance( IGiGaRunManager* value );
00166   
00167 private:
00168   
00169   static IGiGaRunManager* s_manager ;
00170   
00171 };
00172 // ============================================================================
00173 
00174 // ============================================================================
00175 // The END 
00176 // ============================================================================
00177 #endif 
00178 // ============================================================================
| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

Generated on Mon Apr 11 20:01:14 2011 for GiGa by doxygen 1.4.7