ATLAS Offline Software
FPTracker/FPTracker/Point.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef FPTRACKER_POINT_H
6 #define FPTRACKER_POINT_H
7 
8 #include <ostream>
9 #include <string>
10 namespace FPTracker{
11 
12  class TransversePoint;
13 
14  class Point{
15  public:
16  Point();
17  Point(double, double, double);
18  Point& operator+=(const Point& rhs);
19  Point& operator-=(const Point& rhs);
20  Point& operator+=(const TransversePoint& rhs);
21  Point& operator-=(const TransversePoint& rhs);
22  double operator[](unsigned int) const;
23  double& operator[](unsigned int);
24  Point& operator*=(double);
26  double perp2() const;
27  std::string str() const;
28  double x() const;
29  double y() const;
30  double z() const;
31  double mag2() const;
32  double mag() const;
33  private:
34  double m_x;
35  double m_y;
36  double m_z;
37  };
38 
39  Point operator+(const Point& lhs, const Point& rhs);
40  Point operator-(const Point& lhs, const Point& rhs);
41  Point operator+(const Point& lhs, const TransversePoint& rhs);
42  Point operator-(const Point& lhs, const TransversePoint& rhs);
43  Point operator*(double, const Point& lhs);
44  std::ostream& operator<<(std::ostream&, const Point&);
45 }
46 #endif
FPTracker::operator<<
std::ostream & operator<<(std::ostream &os, const Beamline &bl)
Definition: FPTracker/src/Beamline.cxx:163
FPTracker::Point::x
double x() const
Definition: FPTracker/src/Point.cxx:17
FPTracker::Point::m_y
double m_y
Definition: FPTracker/FPTracker/Point.h:35
FPTracker::Point::transverse
TransversePoint transverse() const
Definition: FPTracker/src/Point.cxx:23
FPTracker::Point::y
double y() const
Definition: FPTracker/src/Point.cxx:18
FPTracker::operator*
Point operator*(double, const Point &lhs)
Definition: FPTracker/src/Point.cxx:123
FPTracker::operator+
Point operator+(const Point &lhs, const Point &rhs)
Definition: FPTracker/src/Point.cxx:98
FPTracker::Point::Point
Point()
Definition: FPTracker/src/Point.cxx:12
FPTracker::Point::operator-=
Point & operator-=(const Point &rhs)
Definition: FPTracker/src/Point.cxx:73
FPTracker::Point::operator[]
double operator[](unsigned int) const
Definition: FPTracker/src/Point.cxx:38
FPTracker::Point::m_z
double m_z
Definition: FPTracker/FPTracker/Point.h:36
FPTracker::Point::perp2
double perp2() const
Definition: FPTracker/src/Point.cxx:21
FPTracker::Point::z
double z() const
Definition: FPTracker/src/Point.cxx:19
FPTracker::Point::mag
double mag() const
Definition: FPTracker/src/Point.cxx:34
FPTracker::Point
Definition: FPTracker/FPTracker/Point.h:14
FPTracker::Point::operator*=
Point & operator*=(double)
Definition: FPTracker/src/Point.cxx:25
FPTracker::Point::mag2
double mag2() const
Definition: FPTracker/src/Point.cxx:32
FPTracker::operator-
Point operator-(const Point &lhs, const Point &rhs)
Definition: FPTracker/src/Point.cxx:103
FPTracker
Definition: FPTracker/FPTracker/Beamline.h:12
FPTracker::Point::str
std::string str() const
Definition: FPTracker/src/Point.cxx:92
FPTracker::Point::m_x
double m_x
Definition: FPTracker/FPTracker/Point.h:34
FPTracker::Point::operator+=
Point & operator+=(const Point &rhs)
Definition: FPTracker/src/Point.cxx:66
FPTracker::TransversePoint
Definition: FPTracker/FPTracker/TransversePoint.h:12