Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members  

AlephExManager.h

Go to the documentation of this file.
00001 
00002 //
00003 //  Class AlephExManager
00004 //
00005 //  The class responsible for the execution = run over data
00006 //  It inherits from AlephManager.
00007 //  It is a singleton
00008 //
00009 //  Author : G. Dissertori  ,  10.08.99
00010 //
00012 
00013 #ifndef ALEPHEXMANAGER_H
00014 #define ALEPHEXMANAGER_H
00015 
00016 #include "AlObject.h"
00017 #include "AlphaBanks.h"
00018 #include "AlephManager.h"
00019 #include "AlephDbManager.h"
00020 #include "AlephIoManager.h"
00021 #include "AlephCardsReader.h"
00022 #include "AlephNtupleWriter.h"
00023 
00025 // further external fortran stuff needed for setup of Alphabanks
00027 #include "fortran_def.h"
00028 
00029 // the AlephExManager class
00030 class AlephExManager : public AlephManager {
00031 
00032 public:
00033 
00034 // the instance function of the  Singleton
00035   static AlephManager* TheAlephExManager(); 
00036 // the initialization step 
00037   virtual AlephRC initialize(); 
00038 // the user init
00039   void UserInit();
00040 // the running 
00041   virtual AlephRC run(); 
00042 // the user running
00043   bool UserEvent(AlphaBanks& );
00044 // the terminating step 
00045   virtual AlephRC terminate(); 
00046 // the user termination
00047   void UserTerm();
00048 // some general utility 
00049   // set current run and event number
00050   void setCurrentRunEvt(const long& CurrentRun,
00051                         const long& CurrentEvt);
00052   // get current Run number
00053   long getCurrentRun() const;
00054   // get current Evt number
00055   long getCurrentEvt() const;
00056   // get the event counter
00057   long getEventCount() const;
00058   // give pointers to managers (nice for the user)
00059   AlephSession*       theSession() const;
00060   AlephDbManager*     theDbm()     const;
00061   AlephIoManager*     theIom()     const;
00062   AlephCardsReader*   theCardsReader() const;
00063   AlephNtupleWriter*  theNtupleWriter() const;
00064   
00065 protected:
00066 
00067 // constructor and destructor
00068   AlephExManager();
00069   virtual ~AlephExManager();
00070 // the pointer to the database manager
00071   AlephDbManager* _theDbManager;
00072 // event counter
00073   long EventCount;
00074 
00075  private:
00076 
00077 // the pointer to the single static instance
00078   static AlephManager* _theAlephExManager;
00079 // current run and event number
00080   long _currentRun;
00081   long _currentEvt;
00082 };
00083 
00084 #endif
00085 

Generated at Wed Jun 18 17:19:09 2003 for ALPHA++ by doxygen1.2.8.1 written by Dimitri van Heesch, © 1997-2001