rivet is hosted by Hepforge, IPPP Durham
Rivet 4.0.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
8namespace 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
39 using Projection::operator =;
40
41 };
42
43
44}
45
46#endif
Base class for projections which define a spatial basis.
Definition AxesDefinition.hh:19
virtual const Vector3 & axis2() const =0
The 2nd most significant ("major") axis.
virtual const Vector3 & axis1() const =0
virtual ~AxesDefinition()
Virtual destructor.
Definition AxesDefinition.hh:23
virtual unique_ptr< Projection > clone() const =0
Clone on the heap.
virtual const Vector3 & axis3() const =0
The least significant ("minor") axis.
Base class for all Rivet projections.
Definition Projection.hh:29
Three-dimensional specialisation of Vector.
Definition Vector3.hh:40
Definition MC_CENT_PPB_Projections.hh:10