BOSS 8.0.0
BESIII Offline Software System
Loading...
Searching...
No Matches
Reconstruction/MdcPatRec/TrkBase/include/TrkBase/TrkLineTraj.h
Go to the documentation of this file.
1// ----------------------------------------------------------------------------
2// File and Version Information:
3// $Id: TrkLineTraj.h,v 1.2 2005/07/18 02:56:07 zhangy Exp $
4//
5// Description:
6// Single line segment trajectory class
7//
8// Copyright Information:
9// Copyright (C) 1996 Lawrence Berkeley Laboratory
10//
11// Authors: Dave Brown, 11/15/96
12//-----------------------------------------------------------------------------
13#ifndef TrkLineTraj_H
14#define TrkLineTraj_H
15#include "CLHEP/Geometry/Point3D.h"
16#include "CLHEP/Vector/ThreeVector.h"
17#include "MdcGeom/TrkGeomTraj.h"
18
19class TrkLineTraj : public TrkGeomTraj {
20public:
21 //
22 // construct from a point, direction and length, or 2 points
23 //
24 TrkLineTraj( const HepPoint3D& point, const Hep3Vector& direction, double length );
25 TrkLineTraj( const HepPoint3D& point, const Hep3Vector& direction, double lorange,
26 double hirange );
27 TrkLineTraj( const HepPoint3D& point1, const HepPoint3D& point2 );
28 TrkLineTraj( const TrkLineTraj& ); // copy ctor
29 //
31
32 // destructor
34
35 // operators
37
38 // needed implementations for intersection with a Surface
39 HepPoint3D position( double ) const;
40 Hep3Vector direction( double ) const;
41 double curvature( double f = 0. ) const;
42 Hep3Vector delDirect( double ) const;
43 void getInfo( double fltLen, HepPoint3D&, Hep3Vector& direction ) const;
44 void getInfo( double fltLen, HepPoint3D&, Hep3Vector& direction,
45 Hep3Vector& delDirect ) const;
46
47 virtual double distTo1stError( double s, double tol, int pathDir ) const;
48 virtual double distTo2ndError( double s, double tol, int pathDir ) const;
49
50 // Support Visitor pattern (see TrkGeomTraj.hh)
51 void accept( TrkGeomTrajVisitor& visitor ) const;
52
53 // Data Members
54private:
55 HepPoint3D _start; // where the trajectory starts
56 Hep3Vector _direction; // direction (unit) vector
57};
58#endif
HepGeom::Point3D< double > HepPoint3D
TFile f("ana_bhabha660a_dqa_mcPat_zy_old.root")
XmlRpcServer s
TrkLineTraj(const HepPoint3D &point, const Hep3Vector &direction, double length)
Hep3Vector direction(double) const
TrkLineTraj * clone() const
void accept(TrkGeomTrajVisitor &visitor) const
void getInfo(double fltLen, HepPoint3D &, Hep3Vector &direction) const
void getInfo(double fltLen, HepPoint3D &, Hep3Vector &direction, Hep3Vector &delDirect) const
TrkLineTraj(const TrkLineTraj &)
virtual double distTo2ndError(double s, double tol, int pathDir) const
TrkLineTraj(const HepPoint3D &point, const Hep3Vector &direction, double lorange, double hirange)
virtual double distTo1stError(double s, double tol, int pathDir) const
TrkLineTraj & operator=(const TrkLineTraj &)
Hep3Vector delDirect(double) const
TrkLineTraj(const HepPoint3D &point1, const HepPoint3D &point2)
double curvature(double f=0.) const
HepPoint3D position(double) const