All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
TrackTrajectoryAlg.h
Go to the documentation of this file.
1 //////////////////////////////////////////////////////////////////////
2 ///
3 /// TrackTrajectoryAlg class
4 ///
5 /// Bruce Baller, baller@fnal.gov
6 ///
7 /// Algorithm fitting a 3D trajectory through a set of hit pairs
8 ///
9 ////////////////////////////////////////////////////////////////////////
10 #ifndef TRACKTRAJECTORYALG_H
11 #define TRACKTRAJECTORYALG_H
12 
13 #include <array>
14 #include <vector>
15 
16 #include "art/Framework/Services/Registry/ServiceHandle.h"
17 
20 namespace geo { struct WireID; }
21 
22 #include "TVector3.h"
23 
24 namespace trkf {
25 
27  public:
28 
29  void TrackTrajectory(std::array<std::vector<geo::WireID>,3> trkWID,
30  std::array<std::vector<double>,3> trkX,
31  std::array<std::vector<double>,3> trkXErr,
32  std::vector<TVector3>& TrajPos, std::vector<TVector3>& TrajDir);
33 
34  private:
35 
36  art::ServiceHandle<geo::Geometry const> geom;
37 
38  double minX;
39  unsigned short minXPln;
40  double maxX;
41  unsigned short maxXPln;
42  bool prt;
43 
44  unsigned short fMaxTrajPoints; // maximum number of trajectory points
45  double fHitWidthFactor; // scales the number of trajectory points to the hit rms
46 
47 
49 
50  void ShortTrackTrajectory(std::array<std::vector<geo::WireID>,3> trkWID,
51  std::array<std::vector<double>,3> trkX,
52  std::array<std::vector<double>,3> trkXErr,
53  std::vector<TVector3>& TrajPos, std::vector<TVector3>& TrajDir);
54 
55  }; // class TrackTrajectoryAlg
56 
57 } // namespace trkf
58 
59 #endif // ifndef TRACKTRAJECTORYALG_H
TrackLineFitAlg fTrackLineFitAlg
then echo ***************************************echo array
Definition: find_fhicl.sh:28
IDparameter< geo::WireID > WireID
Member type of validated geo::WireID parameter.
void TrackTrajectory(std::array< std::vector< geo::WireID >, 3 > trkWID, std::array< std::vector< double >, 3 > trkX, std::array< std::vector< double >, 3 > trkXErr, std::vector< TVector3 > &TrajPos, std::vector< TVector3 > &TrajDir)
void ShortTrackTrajectory(std::array< std::vector< geo::WireID >, 3 > trkWID, std::array< std::vector< double >, 3 > trkX, std::array< std::vector< double >, 3 > trkXErr, std::vector< TVector3 > &TrajPos, std::vector< TVector3 > &TrajDir)
art::ServiceHandle< geo::Geometry const > geom
art framework interface to geometry description