Hall A ROOT/C++ Analyzer (podd)
Loading...
Searching...
No Matches
THaEpicsEvtHandler.h
Go to the documentation of this file.
1#ifndef Podd_THaEpicsEvtHandler_h_
2#define Podd_THaEpicsEvtHandler_h_
3
5//
6// THaEpicsEvtHandler
7// Class to handle Hall A EPICS events (event type 131)
8// It makes use of the existing THaEpics and EpicsChan
9// classes from the Decoder.
10// author Robert Michaels (rom@jlab.org)
11//
13
14#include "THaEvtTypeHandler.h"
15#include "THaEpics.h"
16#include "TString.h"
17#include <string>
18#include <vector>
19#include <memory>
20
22
23public:
24
25 THaEpicsEvtHandler(const char* name, const char* description);
26 virtual ~THaEpicsEvtHandler() = default;
27
28 virtual Int_t Analyze(THaEvData *evdata);
29 virtual EStatus Init( const TDatime& run_time);
30 virtual Int_t End( THaRunBase* r=nullptr );
31 Bool_t IsLoaded(const char* tag) const;
32 Double_t GetData( const char* tag, UInt_t event = 0 ) const;
33 time_t GetTime( const char* tag, UInt_t event = 0 ) const;
34 TString GetString( const char* tag, UInt_t event = 0 ) const;
35
36private:
37
38 std::unique_ptr<Decoder::THaEpics> fEpics;
39 static const Int_t MAXDATA=20000;
40
43
44 ClassDef(THaEpicsEvtHandler,0) // EPICS Event handler
45
46};
47
48#endif
int Int_t
unsigned int UInt_t
bool Bool_t
double Double_t
#define ClassDef(name, id)
char name[80]
Double_t GetData(const char *tag, UInt_t event=0) const
virtual ~THaEpicsEvtHandler()=default
static const Int_t MAXDATA
TString GetString(const char *tag, UInt_t event=0) const
std::unique_ptr< Decoder::THaEpics > fEpics
THaEpicsEvtHandler & operator=(const THaEpicsEvtHandler &fh)
THaEpicsEvtHandler(const THaEpicsEvtHandler &fh)
time_t GetTime(const char *tag, UInt_t event=0) const
virtual Int_t End(THaRunBase *r=nullptr)
virtual Int_t Analyze(THaEvData *evdata)
Bool_t IsLoaded(const char *tag) const