]>
Commit | Line | Data |
---|---|---|
da0e9ce3 | 1 | //----------------------------------------------------------------------- |
2 | // File and Version Information: | |
3 | // $Id: EvtDecayMode.hh,v 1.10 2009/02/15 18:15:59 ryd Exp $ | |
4 | // | |
5 | // Environment: | |
6 | // This software is part of the EvtGen package developed jointly | |
7 | // for the BaBar and CLEO collaborations. If you use all or part | |
8 | // of it, please give an appropriate acknowledgement. | |
9 | // | |
10 | // Copyright Information: | |
11 | // Copyright (C) 1998 Caltech, UCSB | |
12 | // | |
13 | // Module creator: | |
14 | // Alexei Dvoretskii, Caltech, 2001-2002. | |
15 | //----------------------------------------------------------------------- | |
16 | ||
17 | #ifndef EVT_DECAY_MODE_HH | |
18 | #define EVT_DECAY_MODE_HH | |
19 | ||
20 | #include <string> | |
21 | #include <vector> | |
22 | #include "EvtGenBase/EvtCyclic3.hh" | |
23 | ||
24 | #include <iosfwd> | |
25 | ||
26 | class EvtDecayMode { | |
27 | ||
28 | public: | |
29 | ||
30 | EvtDecayMode(const char* decay); | |
31 | EvtDecayMode(const EvtDecayMode& other); | |
32 | EvtDecayMode(std::string mother,std::vector<std::string> dau); | |
33 | ~EvtDecayMode(); | |
34 | ||
35 | const char* mother() const; | |
36 | int nD() const; | |
37 | const char* dau(int i) const; | |
38 | ||
39 | std::ostream& print(std::ostream&) const; | |
40 | ||
41 | ||
42 | // Frequent name combinations | |
43 | ||
44 | std::string m(EvtCyclic3::Pair i) const; | |
45 | std::string q(EvtCyclic3::Pair i) const; | |
46 | std::string dal(EvtCyclic3::Pair i, EvtCyclic3::Pair j) const; | |
47 | std::string mode() const; | |
48 | ||
49 | private: | |
50 | ||
51 | std::string _mother; | |
52 | std::vector<std::string> _dau; | |
53 | ||
54 | }; | |
55 | ||
56 | ||
57 | std::ostream& operator<<(std::ostream&,const EvtDecayMode&); | |
58 | ||
59 | #endif |