00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016 #include "TGo4EventInfoStatus.h"
00017
00018 #include <iostream.h>
00019
00020 #include "TTree.h"
00021
00022 #include "Go4LockGuard/TGo4LockGuard.h"
00023 #include "Go4Event/TGo4EventElement.h"
00024
00025 TGo4EventInfoStatus::TGo4EventInfoStatus(const char* name, const char* title)
00026 :TGo4Status(name, title),
00027 fiEventNum(10),fiSubId(-1),fbLong(kTRUE),fbHex(kTRUE),fbData(kFALSE),
00028 fbRemotePrint(kTRUE), fbTreeMode(kFALSE),fxEventTree(0),fxEvent(0)
00029 {
00030 }
00031
00032 TGo4EventInfoStatus::~TGo4EventInfoStatus()
00033 {
00034 TGo4LockGuard Global;
00035 delete fxEventTree;
00036 delete fxEvent;
00037 }
00038
00039 void TGo4EventInfoStatus::SetEvent(TTree* tree)
00040 {
00041 if(tree==0) return;
00042 TGo4LockGuard Global;
00043 delete fxEvent;
00044 fxEvent=0;
00045 delete fxEventTree;
00046 fxEventTree= (TTree*) tree->Clone();
00047 PrintEventSample();
00048 }
00049
00050 void TGo4EventInfoStatus::SetEvent(TGo4EventElement* eve)
00051 {
00052 if(eve==0) return;
00053 TGo4LockGuard Global;
00054 delete fxEventTree;
00055 fxEventTree=0;
00056 delete fxEvent;
00057 fxEvent= (TGo4EventElement*) eve->Clone();
00058 PrintEventSample();
00059 }
00060
00061 void TGo4EventInfoStatus::PrintEventSample()
00062 {
00063
00065
00066
00067
00068
00069
00070
00071 TGo4LockGuard Global;
00072 if(fxEventTree)
00073 {
00074
00075 fxEventTree->Show(0);
00076
00077 }
00078 else if (fxEvent)
00079 {
00080
00081 fxEvent->PrintEvent();
00082
00083 }
00084 else
00085 cout <<"No event sample available!" << endl;
00086
00087
00088
00089
00090 }
00091
00092
00093
00094
00095
00096
00097
00098
00099