35 const char* spectro1,
const char* spectro2 ) :
37 fName1(spectro1), fName2(spectro2), fSpectro1(nullptr), fSpectro2(nullptr)
96 if( !
IsOK() )
return -1;
99 if( !
t1 || !
t1->IsOK())
return 1;
101 if( !t2 || !t2->
IsOK())
return 2;
104 if( !
s1 || !s2 )
return 4;
106 static const TVector3 yax( 0.0, 1.0, 0.0 );
110 p1 *=
s1->GetToLabRot();
111 p1 +=
s1->GetPointingOffset();
128 cout <<
"============Two-arm vertex:===========" << endl;
129 cout <<
"--o1\n"; p1.
Dump();
130 cout <<
"--o2\n"; p2.
Dump();
131 cout <<
"--p1\n"; (
t1->GetPvect()).
Dump();
139 cout <<
"--twoarm\n";
145 p1,
t1->GetPvect(), t,
v2 ))
147 cout <<
"--twoarm_alt\n";
Option_t Option_t TPoint TPoint const char mode
static Int_t DefineVarsFromList(const void *list, EType type, EMode mode, const char *def_prefix, const TObject *obj, const char *prefix, const char *here, const char *comment_subst="")
THaAnalysisObject * FindModule(const char *name, const char *classname, bool do_error=true)
static Bool_t IntersectPlaneWithRay(const TVector3 &xax, const TVector3 &yax, const TVector3 &org, const TVector3 &ray_start, const TVector3 &ray_vect, Double_t &length, TVector3 &intersect)
virtual void Clear(Option_t *opt="")
const TRotation & GetToLabRot() const
const TVector3 & GetPointingOffset() const
THaSpectrometer * GetSpectrometer() const
const TVector3 & GetPvect() const
THaTrackInfo * GetTrackInfo()
virtual void Clear(Option_t *opt="")
THaTrackingModule * fSpectro1
virtual Int_t Process(const THaEvData &)
THaTrackingModule * fSpectro2
virtual ~THaTwoarmVertex()
virtual Int_t DefineVariables(EMode mode=kDefine)
THaTwoarmVertex(const char *name, const char *description, const char *spectro1="", const char *spectro2="")
virtual void VertexClear()
static const RVarDef * GetRVarDef()
virtual void Dump() const
const char * Data() const