00001 #ifndef MultiTrajectoryStateMode_H_ 00002 #define MultiTrajectoryStateMode_H_ 00003 00006 #include "DataFormats/GeometryVector/interface/GlobalPoint.h" 00007 #include "DataFormats/GeometryVector/interface/GlobalVector.h" 00008 00009 class TrajectoryStateOnSurface; 00010 00011 class MultiTrajectoryStateMode { 00012 public: 00015 bool momentumFromModeCartesian (const TrajectoryStateOnSurface tsos, 00016 GlobalVector& momentum) const; 00019 bool positionFromModeCartesian (const TrajectoryStateOnSurface tsos, 00020 GlobalPoint& position) const; 00023 bool momentumFromModeLocal (const TrajectoryStateOnSurface tsos, 00024 GlobalVector& momentum) const; 00027 bool positionFromModeLocal (const TrajectoryStateOnSurface tsos, 00028 GlobalPoint& position) const; 00030 bool momentumFromModeQP (const TrajectoryStateOnSurface tsos, 00031 double& momentum) const; 00033 bool momentumFromModeP (const TrajectoryStateOnSurface tsos, 00034 double& momentum) const; 00037 bool momentumFromModePPhiEta (const TrajectoryStateOnSurface tsos, 00038 GlobalVector& momentum) const; 00040 int chargeFromMode (const TrajectoryStateOnSurface tsos) const; 00041 }; 00042 00043 00044 #endif 00045