GSI Object Oriented Online Offline (Go4)  GO4-5.3.2
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
TGo4ComDisconnectSlave.cxx
Go to the documentation of this file.
1 // $Id: TGo4ComDisconnectSlave.cxx 478 2009-10-29 12:26:09Z linev $
2 //-----------------------------------------------------------------------
3 // The GSI Online Offline Object Oriented (Go4) Project
4 // Experiment Data Processing at EE department, GSI
5 //-----------------------------------------------------------------------
6 // Copyright (C) 2000- GSI Helmholtzzentrum für Schwerionenforschung GmbH
7 // Planckstr. 1, 64291 Darmstadt, Germany
8 // Contact: http://go4.gsi.de
9 //-----------------------------------------------------------------------
10 // This software can be used under the license agreements as stated
11 // in Go4License.txt file which is part of the distribution.
12 //-----------------------------------------------------------------------
13 
14 #include "TGo4ComDisconnectSlave.h"
15 
16 #include "TGo4Log.h"
17 #include "TGo4Master.h"
18 
20 :TGo4TaskHandlerCommand("MRDisconnectSlave","disconnect the specified slave")
21 {
22  SetReceiverName("MasterTask"); // sets the receiver name checked by command invoker
23  // receiver name neednt be class name!
24  fbIsLocal = kTRUE;
25  fxSlaveName = "currentslave";
26  fbWaitForSlave = kTRUE;
27 }
29 {
30 
31 }
32 
33 
35 {
36 TGo4Master* master=dynamic_cast<TGo4Master*>(fxReceiverBase);
37 if(master)
38  {
39  TGo4Log::Debug(" removing slave %s",fxSlaveName.Data());
40  if(!master->DisconnectSlave(fxSlaveName.Data(), fbWaitForSlave))
41  {
42  TGo4Log::Debug(" ComDisconnectSlave: Sorry, the specified slave is not connected ");
43  return 1;
44  }
45  else
46  {
47  TGo4Log::Debug(" ComDisconnectSlave: Slave %s is removed ",fxSlaveName.Data());
48  return 0;
49  }
50  }
51  else
52  {
53  TGo4Log::Debug(" !!! ComRemoveClient ''%s'': NO RECEIVER ERROR!!!",GetName());
54  return 1;
55  }
56  return -1;
57 }
void SetReceiverName(const char *)
Definition: TGo4Command.cxx:92
TGo4CommandReceiver * fxReceiverBase
Definition: TGo4Command.h:117
Bool_t fbIsLocal
Definition: TGo4Command.h:94
virtual Bool_t DisconnectSlave(const char *name=0, Bool_t waitforslave=kTRUE)
Definition: TGo4Master.cxx:82
static void Debug(const char *text,...)
Definition: TGo4Log.cxx:270