]> git.uio.no Git - u/mrichter/AliRoot.git/blob - TEvtGen/EvtGenBase/EvtDalitzCoord.hh
Fixes for Coverity defects
[u/mrichter/AliRoot.git] / TEvtGen / EvtGenBase / EvtDalitzCoord.hh
1 /*******************************************************************************
2  * Project: BaBar detector at the SLAC PEP-II B-factory
3  * Package: EvtGenBase
4  *    File: $Id: EvtDalitzCoord.hh,v 1.3 2004/08/06 06:08:24 bartoldu Exp $
5  *  Author: Alexei Dvoretskii, dvoretsk@slac.stanford.edu, 2001-2002
6  *
7  * Copyright (C) 2002 Caltech
8  *******************************************************************************/
9
10 // Two dimensional coordinate of a point in a Dalitz plot
11
12 #ifndef EVT_DALITZ_COORD_HH
13 #define EVT_DALITZ_COORD_HH
14
15 #include "EvtGenBase/EvtCyclic3.hh"
16
17 #include <iostream>
18
19 class EvtDalitzCoord {
20   
21   
22 public:
23   
24   // ctor, dtor
25
26   EvtDalitzCoord(); 
27   EvtDalitzCoord(EvtCyclic3::Pair i1, double q1, EvtCyclic3::Pair i2, double q2);
28   EvtDalitzCoord(const EvtDalitzCoord& other); 
29   ~EvtDalitzCoord();
30
31   inline EvtCyclic3::Pair pair1() const { return _i1; }
32   inline EvtCyclic3::Pair pair2() const { return _i2; }
33   inline double q1() const { return _q1; }
34   inline double q2() const { return _q2; }
35
36
37   // It's nice to have an equality operator for
38   // a coordinate. However, beware effects of numerical precision
39   
40   bool operator==(const EvtDalitzCoord&) const;
41
42   void print(std::ostream&) const;
43
44 private:
45
46   // Two coordinates define the point
47
48   EvtCyclic3::Pair _i1;
49   EvtCyclic3::Pair _i2;
50
51   double _q1;
52   double _q2;
53 }; 
54
55 std::ostream& operator<<(std::ostream&,const EvtDalitzCoord&);
56
57 #endif
58
59
60
61
62
63