MINT2
NamedDecayTreeList.h
Go to the documentation of this file.
1 #ifndef NAMED_DECAY_TREE_LIST_HH
2 #define NAMED_DECAY_TREE_LIST_HH
3 // author: Jonas Rademacker (Jonas.Rademacker@bristol.ac.uk)
4 // status: Mon 9 Feb 2009 19:18:03 GMT
5 
6 #include <map>
7 #include <string>
8 #include <iostream>
9 
10 #include "Mint/DecayTree.h"
12 #include "Mint/AmpInitialiser.h"
13 
14 typedef std::map<std::string, AmpInitialiser> AmpInitMap;
15 
19  protected:
22  AmpInitMap _treesOnlyBgSpinZero; // for background
26 
27  int make3BodyList();
29  int make4BodyList();
30 
31  // --- 3 body ---
32  int makeKsPiPiList();
33  int makeKPiPiZeroList();
34  int makeDplusToKKPiList();
35  int makeB02DDKList();
36  int makeBp2DDKList();
37  int makePiPiPi0List();
38  int makeKKPi0List();
39  // --- 4 body ---
40  int makePsiKpipiList();
41  int makeKpipiGammaList();
42  int makeJpsiKpipiList();
44  int makeKKpipiList();
45  int makeK3piList();
47  int make4PiList();
48  // ---------------
49 
50  //int add_SpinZero_forAll(); // bgTest
51  //int add_D_to_CPConjugates_forAll();
52  //int add_CPConjugates_forAll();
53  //int add_CLEO2012_forAll();
54  public:
55  const AmpInitMap& trees(const std::string& opt = "ALL") const;
56  // knows options: "ALL", "NoBgSpinZero", "OnlyBgSpinZero"
57 
58  unsigned int size(const std::string& opt = "ALL") const{
59  return trees(opt).size();}
60 
62  std::cout << "NamedDecayTreeList destructor - should "
63  << "not have been called." << std::endl;
64  }
65 
66  static NamedDecayTreeList*
67  getMe(const std::string& printopt="printNever");
68  // possible options: "printNever", "printFirstTime", "printAlways"
69  void add(const AmpInitialiser& tree, const std::string& opt="ALL");
70  void addSimple(const AmpInitialiser& tree, const std::string& opt="ALL");
71  void multiAdd(const AmpInitialiser& tree, const std::string& opt="ALL"){
72  return add(tree, opt);}// for backward compatibility, only.
73 
74 
75  const AmpInitialiser& find(const std::string& name
76  , bool& successFlag) const;
77 
78  const AmpInitialiser& find(const std::string& name) const{
79  bool dummy;
80  return find(name, dummy);
81  }
82 
83  std::string getLongestName() const;
84 
85  int makeDecayTreeList();
86 
87  void print(std::ostream& os = std::cout) const;
88 };
89 
90 std::ostream& operator<<(std::ostream&, const NamedDecayTreeList& ndtl);
91 
92 #endif
93 //
const AmpInitialiser & find(const std::string &name, bool &successFlag) const
void add(const AmpInitialiser &tree, const std::string &opt="ALL")
static NamedDecayTreeList * __ptr
int makeShortJpsiKpipiList()
const AmpInitialiser & find(const std::string &name) const
static AmpInitialiser dummyAmpInitialiser
static NamedDecayTreeList * getMe(const std::string &printopt="printNever")
const AmpInitMap & trees(const std::string &opt="ALL") const
std::string getLongestName() const
AmpInitMap _treesOnlyCLEO2012
AmpInitMap _treesNoBgSpinZero
void print(std::ostream &os=std::cout) const
std::ostream & operator<<(std::ostream &, const NamedDecayTreeList &ndtl)
unsigned int size(const std::string &opt="ALL") const
void addSimple(const AmpInitialiser &tree, const std::string &opt="ALL")
std::map< std::string, AmpInitialiser > AmpInitMap
void multiAdd(const AmpInitialiser &tree, const std::string &opt="ALL")
AmpInitMap _treesOnlyBgSpinZero