rivet is hosted by Hepforge, IPPP Durham
Rivet  2.7.0
AxesDefinition.hh
1 // -*- C++ -*-
2 #ifndef RIVET_AxesDefinition_HH
3 #define RIVET_AxesDefinition_HH
4 
5 #include "Rivet/Projection.hh"
6 #include "Rivet/Event.hh"
7 
8 namespace Rivet {
9 
10 
19  class AxesDefinition : public Projection {
20  public:
21 
23  virtual ~AxesDefinition() { }
24 
26  virtual unique_ptr<Projection> clone() const = 0;
27 
30  virtual const Vector3& axis1() const = 0;
32  virtual const Vector3& axis2() const = 0;
34  virtual const Vector3& axis3() const = 0;
36 
37  };
38 
39 
40 }
41 
42 #endif
Definition: ALICE_2010_I880049.cc:13
Base class for projections which define a spatial basis.
Definition: AxesDefinition.hh:19
virtual const Vector3 & axis1() const =0
virtual const Vector3 & axis3() const =0
The least significant ("minor") axis.
virtual const Vector3 & axis2() const =0
The 2nd most significant ("major") axis.
virtual ~AxesDefinition()
Virtual destructor.
Definition: AxesDefinition.hh:23
Base class for all Rivet projections.
Definition: Projection.hh:29
Three-dimensional specialisation of Vector.
Definition: Vector3.hh:26
virtual unique_ptr< Projection > clone() const =0
Clone on the heap.