00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016 #include "TGo4ComCloseAnalysis.h"
00017
00018 #include "Go4Log/TGo4Log.h"
00019 #include "Go4Analysis/TGo4AnalysisImp.h"
00020 #include "Go4AnalysisClient/TGo4AnalysisClientImp.h"
00021
00022 TGo4ComCloseAnalysis::TGo4ComCloseAnalysis()
00023 :TGo4AnalysisCommand("ANClose","closes analysis event classes")
00024 {
00025 TRACE((12,"TGo4ComCloseAnalysis::TGo4ComCloseAnalysis() ctor",__LINE__, __FILE__));
00026 SetReceiverName("AnalysisClient");
00027
00028 SetProtection(kGo4ComModeController);
00029 }
00030
00031 TGo4ComCloseAnalysis::~TGo4ComCloseAnalysis()
00032 {
00033 TRACE((12,"TGo4ComCloseAnalysis::~TGo4ComCloseAnalysis() dtor",__LINE__, __FILE__));
00034 }
00035
00036 Int_t TGo4ComCloseAnalysis::ExeCom()
00037 {
00038 TRACE((12,"TGo4ComCloseAnalysis::ExeCom() dtor",__LINE__, __FILE__));
00039
00040 TGo4AnalysisClient* cli=dynamic_cast<TGo4AnalysisClient*> (fxReceiverBase);
00041 if (cli!=0)
00042 {
00043 TRACE((11,"TGo4ComCloseAnalysis::ExeCom() - found valid receiver",__LINE__, __FILE__));
00044 TGo4Analysis* ana= TGo4Analysis::Instance();
00045 if(ana)
00046 {
00047 if(cli->MainIsRunning()) ana->PostLoop();
00048
00049
00050 ana->CloseAnalysis();
00051 cli->SendStatusMessage(1, kFALSE,"Analysis %s was closed.",ana->GetName());
00052 }
00053 else
00054 {
00055 cli->SendStatusMessage(3, kTRUE," %s ERROR no analysis ",GetName());
00056 }
00057
00058
00059
00060 }
00061 else
00062 {
00063 TRACE((11,"TGo4ComCloseAnalysis::ExeCom() - no receiver specified ERROR!",__LINE__, __FILE__));
00064 TGo4Log::Debug(" !!! ComCloseAnalysis ''%s'': NO RECEIVER ERROR!!!",GetName());
00065 return 1;
00066 }
00067
00068 return -1;
00069 }
00070
00071
00072 ClassImp(TGo4ComCloseAnalysis)
00073
00074
00075
00076
00077
00078