ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/IPHCalignment2/TrackingTools/PatternTools/interface/TSCPBuilderNoMaterial.h
Revision: 1.1
Committed: Fri Nov 25 16:38:23 2011 UTC (13 years, 5 months ago) by econte
Content type: text/plain
Branch: MAIN
CVS Tags: TBD2011, TBD_2011, HEAD
Log Message:
new IPHC alignment

File Contents

# Content
1 #ifndef TSCPBuilderNoMaterial_H
2 #define TSCPBuilderNoMaterial_H
3
4 #include "TrackingTools/PatternTools/interface/TrajectoryStateClosestToPointBuilder.h"
5 #include "DataFormats/GeometryVector/interface/GlobalTag.h"
6 #include "DataFormats/GeometryVector/interface/Point3DBase.h"
7 #include "DataFormats/GeometryVector/interface/Vector3DBase.h"
8
9 /**
10 * This class builds a TrajectoryStateClosestToPoint given an original
11 * TrajectoryStateOnSurface or FreeTrajectoryState. This new state is then
12 * defined at the point of closest approach to the reference point.
13 * In case the propagation was not successful, this state can be invalid.
14 */
15
16 class TSCPBuilderNoMaterial :
17 public TrajectoryStateClosestToPointBuilder
18 {
19 public:
20
21 virtual ~TSCPBuilderNoMaterial(){}
22
23 virtual TrajectoryStateClosestToPoint operator()
24 (const FTS& originalFTS, const GlobalPoint& referencePoint) const;
25
26 virtual TrajectoryStateClosestToPoint operator()
27 (const TSOS& originalTSOS, const GlobalPoint& referencePoint) const;
28
29 private:
30
31 typedef Point3DBase< double, GlobalTag> GlobalPointDouble;
32 typedef Vector3DBase< double, GlobalTag> GlobalVectorDouble;
33 typedef std::pair<bool, FreeTrajectoryState> PairBoolFTS;
34
35 PairBoolFTS createFTSatTransverseImpactPoint(const FTS& originalFTS,
36 const GlobalPoint& referencePoint) const;
37
38 PairBoolFTS createFTSatTransverseImpactPointCharged(const FTS& originalFTS,
39 const GlobalPoint& referencePoint) const;
40
41 PairBoolFTS createFTSatTransverseImpactPointNeutral(const FTS& originalFTS,
42 const GlobalPoint& referencePoint) const;
43 };
44 #endif