GSI Object Oriented Online Offline (Go4) GO4-6.4.0
Loading...
Searching...
No Matches
TGo4ComLoadAnalysisStatus.cxx
Go to the documentation of this file.
1// $Id$
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 fuer 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
15
16#include "TGo4Log.h"
19#include "TGo4AnalysisImp.h"
20#include "TGo4RemoteCommand.h"
21
23 TGo4AnalysisCommand("ANLoad","Load Analysis Settings from file")
24{
25 GO4TRACE((12,"TGo4ComLoadAnalysisStatus::TGo4ComLoadAnalysisStatus() ctor",__LINE__, __FILE__));
26 SetReceiverName("AnalysisClient"); // this command needs client as receiver
27 // override default receiver
29 SetFileName(filename);
30}
31
33 TGo4AnalysisCommand("ANLoad","Load Analysis Settings from file")
34{
35 GO4TRACE((12,"TGo4ComLoadAnalysisStatus::TGo4ComLoadAnalysisStatus() ctor",__LINE__, __FILE__));
36 SetReceiverName("AnalysisClient"); // this command needs client as receiver
37 // override default receiver
40}
41
43{
44 if(remcom)
45 SetFileName(remcom->GetString(0));
46}
47
49{
50 GO4TRACE((12,"TGo4ComLoadAnalysisStatus::ExeCom()",__LINE__, __FILE__));
51
53 if (!cli) {
54 GO4TRACE((11,"TGo4ComLoadAnalysisStatus::ExeCom() - no receiver specified ERROR!",__LINE__, __FILE__));
55 TGo4Log::Debug(" !!! ComLoadAnalysisStatus ''%s'': NO RECEIVER ERROR!!!",GetName());
56 throw TGo4RuntimeException(); // never come here!
57 }
58
59 GO4TRACE((11,"TGo4ComLoadAnalysisStatus::ExeCom() - found valid receiver",__LINE__, __FILE__));
60 // TGo4Log::Debug(" Executing ComLoadAnalysisStatus... ");
62 if(ana) {
63 Bool_t ok = ana->LoadStatus( GetFileName() );
64 if(ok)
65 {
66 cli->SendStatusMessage(1, kFALSE, TString::Format(
67 "Loaded analysis status from file %s.", GetFileName()));
68 }
69 else
70 {
71 cli->SendStatusMessage(3, kFALSE,TString::Format(
72 "ERROR on Loading analysis status from file %s", GetFileName()));
73 } // if(ok)
74
75 }
76 else
77 {
78 cli->SendStatusMessage(3, kTRUE, TString::Format(
79 " %s ERROR no analysis", GetName()));
80 } // if(ana)
81
82 return -1;
83}
84
@ kGo4ComModeController
Definition TGo4Command.h:30
#define GO4TRACE(X)
Definition TGo4Log.h:25
void SendStatusMessage(Int_t level, Bool_t printout, const TString &text) override
Send message to gui.
The mother of all go4 analysis.
static TGo4Analysis * Instance()
return analysis instance
static const char * fgcDEFAULTSTATUSFILENAME
standard file name for analysis settings
Bool_t LoadStatus(const char *filename=nullptr)
Load Analysis Status from file and set analysis to these settings.
const char * GetFileName() const
Access to the object name under command.
void SetFileName(const char *name)
Set the object name under command.
void Set(TGo4RemoteCommand *remcon) override
Set internals of this command from specification of external remote command (command container).
Int_t ExeCom() override
Do the command action.
void SetProtection(Go4CommandMode_t m)
TGo4CommandReceiver * fxReceiverBase
void SetReceiverName(const char *)
static void Debug(const char *text,...) GO4_PRINTF_ARGS
User shortcut for message with prio 0.
Definition TGo4Log.cxx:281
This command is a container for commands to be send from master to slave via inter-process transport.
const char * GetString(Int_t i) const