GSI Object Oriented Online Offline (Go4) GO4-6.4.0
Loading...
Searching...
No Matches
TGo4MbsHist.h
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
14#ifndef TGO4MBSHIST_H
15#define TGO4MBSHIST_H
16
17#include "TObject.h"
18
19extern "C" {
20 #include "s_his_head.h"
21}
22
23class TFolder;
24class TH1;
25
30class TGo4MbsHist : public TObject {
31 public:
32
34
38 TGo4MbsHist(TH1 *histo);
39
43 TGo4MbsHist(TFolder *histofolder, const char *filter = nullptr);
44
45 virtual ~TGo4MbsHist();
46
48 Int_t *GetBuffer() { return fiBuffer; }
49 Int_t GetBufLen() const { return fiBufLen; }
50 Int_t GetHisNum() const { return fiHisNum; }
51
53 static const Int_t fgiLISTLEN;
54
55 private:
56
58 void PrepareHeader(TH1 *source, const char *path, s_his_head* target);
59
62 void ScanGo4Folder(TFolder *fold, const char *superfolders = nullptr, const char *filter = nullptr);
63
66 void SetValue(char *address, Stat_t value);
67
69 Int_t fiBufLen{0};
70 Int_t *fiBuffer{nullptr};
71
72 /* Points to next histogram header in buffer in case of nameslist */
73 s_his_head *fxCursor{nullptr};
74
76 Int_t fiHisNum{0};
77};
78
79#endif //TGO4MBSHIST_H
s_his_head * GetHead()
Definition TGo4MbsHist.h:47
void ScanGo4Folder(TFolder *fold, const char *superfolders=nullptr, const char *filter=nullptr)
Scan go4 folders containing histograms and subfolders of histograms header information is exctracted ...
s_his_head * fxCursor
Definition TGo4MbsHist.h:73
Int_t * GetBuffer()
Definition TGo4MbsHist.h:48
Int_t fiBufLen
Definition TGo4MbsHist.h:69
Int_t GetBufLen() const
Definition TGo4MbsHist.h:49
Int_t * fiBuffer
Definition TGo4MbsHist.h:70
Int_t GetHisNum() const
Definition TGo4MbsHist.h:50
void SetValue(char *address, Stat_t value)
set value to adress in histogram buffer.
Int_t fiHisNum
Number of histogram headers (1 in case of single his)
Definition TGo4MbsHist.h:76
s_his_head fxHistoHead
Definition TGo4MbsHist.h:68
static const Int_t fgiLISTLEN
Default buffer length for list of histograms.
Definition TGo4MbsHist.h:53
void PrepareHeader(TH1 *source, const char *path, s_his_head *target)
extract header information from histogram to mbs header structur
virtual ~TGo4MbsHist()