Hall A ROOT/C++ Analyzer (podd)
Loading...
Searching...
No Matches
THaTwoarmVertex.h
Go to the documentation of this file.
1#ifndef Podd_THaTwoarmVertex_h_
2#define Podd_THaTwoarmVertex_h_
3
5//
6// THaTwoarmVertex
7//
9
10#include "THaPhysicsModule.h"
11#include "THaVertexModule.h"
12#include "TString.h"
13
15
17
18public:
19 THaTwoarmVertex( const char* name, const char* description,
20 const char* spectro1="", const char* spectro2="" );
21 virtual ~THaTwoarmVertex();
22
23 virtual void Clear( Option_t* opt="" );
24
25 Double_t GetX() const { return fVertex.X(); }
26 Double_t GetY() const { return fVertex.Y(); }
27 Double_t GetZ() const { return fVertex.Z(); }
28
29 virtual EStatus Init( const TDatime& run_time );
30 virtual Int_t Process( const THaEvData& );
31 void SetSpectrometers( const char* name1, const char* name2 );
32
33protected:
34
35 TString fName1; // Name of spectrometer #1
36 TString fName2; // Name of spectrometer #2
37 THaTrackingModule* fSpectro1; // Pointer to spectrometer #1 object
38 THaTrackingModule* fSpectro2; // Pointer to spectrometer #2 object
39
40 virtual Int_t DefineVariables( EMode mode = kDefine );
41
42 ClassDef(THaTwoarmVertex,0) //Two-arm vertex module
43};
44
45//_________ inlines __________________________________________________________
46inline
47void THaTwoarmVertex::SetSpectrometers( const char* name1, const char* name2 )
48{
49 fName1 = name1;
50 fName2 = name2;
51}
52
53#endif
int Int_t
double Double_t
const char Option_t
#define ClassDef(name, id)
char name[80]
virtual void Clear(Option_t *opt="")
THaTrackingModule * fSpectro1
virtual Int_t Process(const THaEvData &)
Double_t GetZ() const
THaTrackingModule * fSpectro2
Double_t GetY() const
Double_t GetX() const
void SetSpectrometers(const char *name1, const char *name2)
virtual ~THaTwoarmVertex()
virtual Int_t DefineVariables(EMode mode=kDefine)
Double_t Z() const
Double_t Y() const
Double_t X() const