File indexing completed on 2024-04-06 12:31:43
0001 #ifndef GlobalParametersWithPath_H
0002 #define GlobalParametersWithPath_H
0003
0004 #include "FWCore/Utilities/interface/Visibility.h"
0005 #include "TrackingTools/TrajectoryParametrization/interface/GlobalTrajectoryParameters.h"
0006
0007 class dso_internal GlobalParametersWithPath {
0008 public:
0009 GlobalParametersWithPath() : gtp_(), s_(0), valid_(false) {}
0010 GlobalParametersWithPath(const GlobalTrajectoryParameters& gtp, double s) : gtp_(gtp), s_(s), valid_(true) {}
0011 GlobalParametersWithPath(const GlobalTrajectoryParameters& gtp, double s, bool valid)
0012 : gtp_(gtp), s_(s), valid_(valid) {}
0013
0014 const GlobalTrajectoryParameters& parameters() const { return gtp_; }
0015
0016 double pathLength() const { return s_; }
0017 double s() const { return pathLength(); }
0018
0019 bool isValid() const { return valid_; }
0020 operator bool() const { return valid_; }
0021
0022 private:
0023 GlobalTrajectoryParameters gtp_;
0024 double s_;
0025 bool valid_;
0026 };
0027
0028 #endif