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 /* Generated by Together */ 00017 00018 #ifndef TGO4SLAVE_H 00019 #define TGO4SLAVE_H 00020 #include "Go4CommandsBase/TGo4CommandReceiver.h" 00021 #include "TGo4Task.h" 00022 #include "TGo4TaskStatus.h" 00023 #include <Rtypes.h> 00024 #include "Go4CommandsBase/TGo4Command.h" 00025 #include <TObject.h> 00026 #include "Go4StatusBase/TGo4Status.h" 00027 #include "Go4ThreadManager/TGo4ThreadHandler.h" 00028 #include "TGo4TaskOwner.h" 00029 00033 class TGo4Slave : public TGo4TaskOwner { 00034 public: 00035 TGo4Slave() ; 00036 00037 TGo4Slave(const char* name, Bool_t isserver=kTRUE, const char* serverhost="localhost", UInt_t negotport=5000) ; 00038 00039 virtual ~TGo4Slave() ; 00040 00045 virtual void Start(); 00046 00051 virtual void Stop(); 00052 00058 virtual void KillMain(); 00059 00065 virtual void RestartMain(); 00066 00067 virtual void Terminate (Bool_t termapp=kTRUE); 00068 00069 virtual void TerminateFast (); 00070 00077 virtual TGo4TaskStatus* CreateStatus(); 00078 00079 Bool_t& MainIsRunning() { return fbMainIsRunning; } 00080 00082 TGo4Command* NextCommand(); 00083 00085 void SendObject(TObject * obj, const char* receiver=0); 00086 00088 void SendStatus(TGo4Status * stat, const char* receiver=0); 00089 00094 virtual Int_t Initialization(); 00095 00096 TGo4ThreadHandler* GetThreadHandler(); 00097 00099 void SendStatusBuffer(); 00100 00105 void SendStatusMessage(Int_t level, Bool_t printout, const char* text, ...); 00106 00113 void UpdateStatusBuffer(); 00114 00119 virtual void ExecuteString(const Text_t* command); 00120 00121 protected: 00122 00129 virtual void UpdateStatus(TGo4TaskStatus* state); 00130 00131 private: 00132 00137 Bool_t fbMainIsRunning; 00138 }; 00139 #endif //TGO4SLAVE_H 00140 00141 //----------------------------END OF GO4 SOURCE FILE ---------------------