Hall A ROOT/C++ Analyzer (podd)
Loading...
Searching...
No Matches
THaEpicsEbeam.h
Go to the documentation of this file.
1#ifndef Podd_THaEpicsEbeam_h_
2#define Podd_THaEpicsEbeam_h_
3
5//
6// THaEpicsEbeam
7//
9
10#include "THaPhysicsModule.h"
11#include "THaBeamModule.h"
12#include "TString.h"
13
15
16public:
17 THaEpicsEbeam( const char* name, const char* description,
18 const char* beam, const char* epics_var,
19 Double_t scale_factor = 1.0 ) ;
20 virtual ~THaEpicsEbeam();
21
22 virtual void Clear( Option_t* opt="" );
23
24 // computed data
25 Double_t GetEcorr() const { return fEcorr; }
26
27 // module parameters
29 const char* GetEpicsVar() const { return fEpicsVar.Data(); }
31
32 virtual EStatus Init( const TDatime& run_time );
33 virtual Int_t Process( const THaEvData& );
34 void SetBeam( const char* beam );
35 void SetEpicsVar( const char* epics_var );
36 void SetEpicsIsMomentum( Bool_t mode=true );
37 void SetScaleFactor( Double_t fact );
38
39protected:
40
41 virtual Int_t DefineVariables( EMode mode = kDefine );
42
43 Double_t fEcorr; // Correction to beam energy (output-input) (GeV)
44 Bool_t fEpicsIsMomentum; // If true, interpret EPICS data as momentum
45 Double_t fScaleFactor; // Scale factor for EPICS data (to conv to GeV)
46
47 TString fBeamName; // Name of input beam module
48 TString fEpicsVar; // Name of EPICS variable to use for beam energy
49 THaBeamModule* fBeamModule; // Pointer to input beam module
50
51 ClassDef(THaEpicsEbeam,0) // Beam module using beam energy from EPICS
52};
53
54#endif
55
int Int_t
bool Bool_t
double Double_t
const char Option_t
#define ClassDef(name, id)
char name[80]
void SetEpicsIsMomentum(Bool_t mode=true)
virtual Int_t DefineVariables(EMode mode=kDefine)
const char * GetEpicsVar() const
TString fEpicsVar
virtual void Clear(Option_t *opt="")
virtual ~THaEpicsEbeam()
void SetBeam(const char *beam)
Bool_t EpicsIsMomentum() const
Double_t GetEcorr() const
TString fBeamName
Bool_t fEpicsIsMomentum
void SetScaleFactor(Double_t fact)
virtual Int_t Process(const THaEvData &)
Double_t fEcorr
Double_t GetScaleFactor() const
THaBeamModule * fBeamModule
void SetEpicsVar(const char *epics_var)
Double_t fScaleFactor
const char * Data() const