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

/Go4CommandsBase/TGo4CommandInvoker.h

Go to the documentation of this file.
00001 //---------------------------------------------------------------
00002 //        Go4 Release Package v2.10-5 (build 21005) 
00003 //                      03-Nov-2005
00004 //---------------------------------------------------------------
00005 //       The GSI Online Offline Object Oriented (Go4) Project
00006 //       Experiment Data Processing at DVEE department, GSI
00007 //---------------------------------------------------------------
00008 //
00009 //Copyright (C) 2000- Gesellschaft f. Schwerionenforschung, GSI
00010 //                    Planckstr. 1, 64291 Darmstadt, Germany
00011 //Contact:            http://go4.gsi.de
00012 //----------------------------------------------------------------
00013 //This software can be used under the license agreements as stated
00014 //in Go4License.txt file which is part of the distribution.
00015 //----------------------------------------------------------------
00016 #ifndef TGO4COMMANDINVOKER_H
00017 #define TGO4COMMANDINVOKER_H
00018 
00023 #include "TObject.h"
00024 #include "TString.h"
00025 #include "TObjArray.h"
00026 
00027 #include "TMutex.h"
00028 
00029 #include "TGo4Command.h"
00030 #include "TGo4CommandReceiver.h"
00031 
00037 class TGo4CommandInvoker : public TObject {
00038 
00039   public:
00040 
00041     static TGo4CommandInvoker * Instance();
00042 
00043     static void Register(const char* name, TGo4CommandReceiver *p);
00044 
00045     virtual void Invoke(TGo4Command * com);
00046 
00047     virtual void Invoke();
00048 
00049     virtual ~TGo4CommandInvoker();
00050 
00051   protected:
00052      TGo4CommandInvoker();
00053      static TGo4CommandReceiver * Lookup(const char* name);
00054 
00055   private:
00056 
00058     TGo4Command * fxCommand;
00059 
00060     static TGo4CommandInvoker *fxInstance;
00061     static TObjArray * fxArray;
00062     static TMutex * fxMutex;
00063     ClassDef(TGo4CommandInvoker, 1) //TGo4CommandInvoker
00064 };
00065 #endif //TGO4COMMANDINVOKER_H
00066 
00067 
00068 
00069 
00070 //----------------------------END OF GO4 SOURCE FILE ---------------------

Generated on Tue Nov 8 10:55:51 2005 for Go4-v2.10-5 by doxygen1.2.15