FairRoot/PandaRoot
RhoCandList.h
Go to the documentation of this file.
1 #ifndef RHOCANDLIST_H
2 #define RHOCANDLIST_H
3 // //
5 // RhoCandList //
6 // //
7 // Container class for RhoCandidates //
8 // //
9 // Author List: //
10 // Marcel Kunze, RUB, Feb. 99 //
11 // Copyright (C) 1999-2001, Ruhr-University Bochum. //
12 // Ralf Kliemt, HIM/GSI Feb.2013 (Cleanup & Restructuring) //
13 // //
15 #include <iostream>
16 #include "TNamed.h"
17 #include "TClonesArray.h"
18 #include "TObjArray.h"
19 #include "TVector.h"
20 #include "TVector3.h"
21 #include "TParticlePDG.h"
22 
23 class RhoCandidate;
26 
27 class RhoCandList : public TNamed
28 {
29 
30  public:
31  //Constructor
32  RhoCandList ( const char* name="RhoCandList",UInt_t capacity=512 );
34  //Destructor
35  virtual ~RhoCandList();
36  void Cleanup();
37 
38  void SetNumberOfTracks ( Int_t );
39  void SetNumberOfCandidates ( Int_t n ) {
40  SetNumberOfTracks ( n );
41  }
42  Int_t GetNumberOfTracks() const;
43  Int_t GetNumberOfCandidates() const {
44  return GetNumberOfTracks();
45  }
46  Int_t GetLength() const {
47  return GetNumberOfTracks();
48  }
49  void Add ( const RhoCandidate* c ) {
50  Put ( c );
51  }
52  void Append ( const RhoCandidate* c ) {
53  Put ( c );
54  }
55  void Append ( RhoCandList& l, RhoParticleSelectorBase* pidmgr=0 );
56  void Put ( const RhoCandidate*, Int_t i = -1 );
57  void InsertAt ( Int_t i, const RhoCandidate* c );
58 
59  // without type
60  void Combine ( RhoCandList& l1, RhoCandList& l2 );
61  void Combine ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3 ); //added 06/08 K.Goetzen
62  void Combine ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, RhoCandList& l4 );//added 06/08 K.Goetzen
63  void Combine ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, RhoCandList& l4, RhoCandList& l5 );//added 06/08 K.Goetzen
64  void Combine ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, RhoCandList& l4, RhoCandList& l5, RhoCandList& l6 );//added 03/2017 R.Kliemt
65  void Combine ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, RhoCandList& l4, RhoCandList& l5, RhoCandList& l6, RhoCandList& l7 );//added 03/2017 R.Kliemt
66  void Combine ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, RhoCandList& l4, RhoCandList& l5, RhoCandList& l6, RhoCandList& l7, RhoCandList& l8 );//added 03/2017 R.Kliemt
67  void Combine ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, RhoCandList& l4, RhoCandList& l5, RhoCandList& l6, RhoCandList& l7, RhoCandList& l8, RhoCandList& l9 );//added 03/2017 R.Kliemt
68  void Combine ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, RhoCandList& l4, RhoCandList& l5, RhoCandList& l6, RhoCandList& l7, RhoCandList& l8, RhoCandList& l9, RhoCandList& l10 );//added 03/2017 R.Kliemt
69 
70  void CombineAndAppend ( RhoCandList& l1, RhoCandList& l2 );
71  void CombineAndAppend ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3 );//added 06/08 K.Goetzen
72  void CombineAndAppend ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, RhoCandList& l4 );//added 06/08 K.Goetzen
73  void CombineAndAppend ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, RhoCandList& l4, RhoCandList& l5 );//added 06/08 K.Goetzen
74  void CombineAndAppend ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, RhoCandList& l4, RhoCandList& l5, RhoCandList& l6 );//added 03/2017 R.Kliemt
75  void CombineAndAppend ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, RhoCandList& l4, RhoCandList& l5, RhoCandList& l6, RhoCandList& l7 );//added 03/2017 R.Kliemt
76  void CombineAndAppend ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, RhoCandList& l4, RhoCandList& l5, RhoCandList& l6, RhoCandList& l7, RhoCandList& l8 );//added 03/2017 R.Kliemt
77  void CombineAndAppend ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, RhoCandList& l4, RhoCandList& l5, RhoCandList& l6, RhoCandList& l7, RhoCandList& l8, RhoCandList& l9 );//added 03/2017 R.Kliemt
79 
80  // with type as TParticlePDG
81  void Combine ( RhoCandList& l1, RhoCandList& l2, const TParticlePDG* pdt ) { Combine(l1, l2); SetType(pdt); }
82  void Combine ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, const TParticlePDG* pdt ) { Combine(l1, l2, l3); SetType(pdt); }
83  void Combine ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, RhoCandList& l4, const TParticlePDG* pdt ) { Combine(l1, l2, l3, l4); SetType(pdt); }
84  void Combine ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, RhoCandList& l4, RhoCandList& l5, const TParticlePDG* pdt ) { Combine(l1, l2, l3, l4, l5); SetType(pdt); }
85  void Combine ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, RhoCandList& l4, RhoCandList& l5, RhoCandList& l6, const TParticlePDG* pdt ){ Combine(l1, l2, l3, l4, l5, l6); SetType(pdt); };//added 03/2017 R.Kliemt
86  void Combine ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, RhoCandList& l4, RhoCandList& l5, RhoCandList& l6, RhoCandList& l7, const TParticlePDG* pdt ){ Combine(l1, l2, l3, l4, l5, l6, l7); SetType(pdt); };//added 03/2017 R.Kliemt
87  void Combine ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, RhoCandList& l4, RhoCandList& l5, RhoCandList& l6, RhoCandList& l7, RhoCandList& l8, const TParticlePDG* pdt ){ Combine(l1, l2, l3, l4, l5, l6, l7, l8); SetType(pdt); };//added 03/2017 R.Kliemt
88  void Combine ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, RhoCandList& l4, RhoCandList& l5, RhoCandList& l6, RhoCandList& l7, RhoCandList& l8, RhoCandList& l9 , const TParticlePDG* pdt ){ Combine(l1, l2, l3, l4, l5, l6, l7, l8, l9); SetType(pdt); };//added 03/2017 R.Kliemt
89  void Combine ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, RhoCandList& l4, RhoCandList& l5, RhoCandList& l6, RhoCandList& l7, RhoCandList& l8, RhoCandList& l9, RhoCandList& l10, const TParticlePDG* pdt ){ Combine(l1, l2, l3, l4, l5, l6, l7, l8, l9, l10); SetType(pdt); };//added 03/2017 R.Kliemt
90 
91  void CombineAndAppend ( RhoCandList& l1, RhoCandList& l2, const TParticlePDG* pdt ) { int s = GetLength(); CombineAndAppend(l1, l2); SetType(pdt, s); }
92  void CombineAndAppend ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, const TParticlePDG* pdt ) { int s = GetLength();CombineAndAppend(l1, l2, l3); SetType(pdt, s); }
93  void CombineAndAppend ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, RhoCandList& l4, const TParticlePDG* pdt ) { int s = GetLength(); CombineAndAppend(l1, l2, l3, l4); SetType(pdt, s); }
94  void CombineAndAppend ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, RhoCandList& l4, RhoCandList& l5, const TParticlePDG* pdt ) { int s = GetLength(); CombineAndAppend(l1, l2, l3, l4, l5); SetType(pdt, s); }
95  void CombineAndAppend ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, RhoCandList& l4, RhoCandList& l5, RhoCandList& l6, const TParticlePDG* pdt ) { int s = GetLength(); CombineAndAppend(l1, l2, l3, l4, l5, l6); SetType(pdt, s); };//added 03/2017 R.Kliemt
96  void CombineAndAppend ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, RhoCandList& l4, RhoCandList& l5, RhoCandList& l6, RhoCandList& l7, const TParticlePDG* pdt ) { int s = GetLength(); CombineAndAppend(l1, l2, l3, l4, l5, l6, l7); SetType(pdt, s); };//added 03/2017 R.Kliemt
97  void CombineAndAppend ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, RhoCandList& l4, RhoCandList& l5, RhoCandList& l6, RhoCandList& l7, RhoCandList& l8, const TParticlePDG* pdt ) { int s = GetLength(); CombineAndAppend(l1, l2, l3, l4, l5, l6, l7, l8); SetType(pdt, s); };//added 03/2017 R.Kliemt
98  void CombineAndAppend ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, RhoCandList& l4, RhoCandList& l5, RhoCandList& l6, RhoCandList& l7, RhoCandList& l8, RhoCandList& l9, const TParticlePDG* pdt ) { int s = GetLength(); CombineAndAppend(l1, l2, l3, l4, l5, l6, l7, l8, l9); SetType(pdt, s); };//added 03/2017 R.Kliemt
99  void CombineAndAppend ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, RhoCandList& l4, RhoCandList& l5, RhoCandList& l6, RhoCandList& l7, RhoCandList& l8, RhoCandList& l9, RhoCandList& l10, const TParticlePDG* pdt ) { int s = GetLength(); CombineAndAppend(l1, l2, l3, l4, l5, l6, l7, l8, l9, l10); SetType(pdt, s); };
100 
101  // with type as char* (name)
102  void Combine ( RhoCandList& l1, RhoCandList& l2, const char* name ) { Combine(l1, l2); SetType(name); }
103  void Combine ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, const char* name ) { Combine(l1, l2, l3); SetType(name); }
104  void Combine ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, RhoCandList& l4, const char* name ) { Combine(l1, l2, l3, l4); SetType(name); }
105  void Combine ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, RhoCandList& l4, RhoCandList& l5, const char* name ) { Combine(l1, l2, l3, l4, l5); SetType(name); }
106  void Combine ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, RhoCandList& l4, RhoCandList& l5, RhoCandList& l6, const char* name ){ Combine(l1, l2, l3, l4, l5, l6); SetType(name); };//added 03/2017 R.Kliemt
107  void Combine ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, RhoCandList& l4, RhoCandList& l5, RhoCandList& l6, RhoCandList& l7, const char* name ){ Combine(l1, l2, l3, l4, l5, l6, l7); SetType(name); };//added 03/2017 R.Kliemt
108  void Combine ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, RhoCandList& l4, RhoCandList& l5, RhoCandList& l6, RhoCandList& l7, RhoCandList& l8, const char* name ){ Combine(l1, l2, l3, l4, l5, l6, l7, l8); SetType(name); };//added 03/2017 R.Kliemt
109  void Combine ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, RhoCandList& l4, RhoCandList& l5, RhoCandList& l6, RhoCandList& l7, RhoCandList& l8, RhoCandList& l9 , const char* name ){ Combine(l1, l2, l3, l4, l5, l6, l7, l8, l9); SetType(name); };//added 03/2017 R.Kliemt
110  void Combine ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, RhoCandList& l4, RhoCandList& l5, RhoCandList& l6, RhoCandList& l7, RhoCandList& l8, RhoCandList& l9, RhoCandList& l10, const char* name ){ Combine(l1, l2, l3, l4, l5, l6, l7, l8, l9, l10); SetType(name); };//added 03/2017 R.Kliemt
111 
112  void CombineAndAppend ( RhoCandList& l1, RhoCandList& l2, const char* name ) { int s = GetLength(); CombineAndAppend(l1, l2); SetType(name, s); }
113  void CombineAndAppend ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, const char* name ) { int s = GetLength();CombineAndAppend(l1, l2, l3); SetType(name, s); }
114  void CombineAndAppend ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, RhoCandList& l4, const char* name ) { int s = GetLength(); CombineAndAppend(l1, l2, l3, l4); SetType(name, s); }
115  void CombineAndAppend ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, RhoCandList& l4, RhoCandList& l5, const char* name ) { int s = GetLength(); CombineAndAppend(l1, l2, l3, l4, l5); SetType(name, s); }
116  void CombineAndAppend ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, RhoCandList& l4, RhoCandList& l5, RhoCandList& l6, const char* name ) { int s = GetLength(); CombineAndAppend(l1, l2, l3, l4, l5, l6); SetType(name, s); };//added 03/2017 R.Kliemt
117  void CombineAndAppend ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, RhoCandList& l4, RhoCandList& l5, RhoCandList& l6, RhoCandList& l7, const char* name ) { int s = GetLength(); CombineAndAppend(l1, l2, l3, l4, l5, l6, l7); SetType(name, s); };//added 03/2017 R.Kliemt
118  void CombineAndAppend ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, RhoCandList& l4, RhoCandList& l5, RhoCandList& l6, RhoCandList& l7, RhoCandList& l8, const char* name ) { int s = GetLength(); CombineAndAppend(l1, l2, l3, l4, l5, l6, l7, l8); SetType(name, s); };//added 03/2017 R.Kliemt
119  void CombineAndAppend ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, RhoCandList& l4, RhoCandList& l5, RhoCandList& l6, RhoCandList& l7, RhoCandList& l8, RhoCandList& l9, const char* name ) { int s = GetLength(); CombineAndAppend(l1, l2, l3, l4, l5, l6, l7, l8, l9); SetType(name, s); };//added 03/2017 R.Kliemt
120  void CombineAndAppend ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, RhoCandList& l4, RhoCandList& l5, RhoCandList& l6, RhoCandList& l7, RhoCandList& l8, RhoCandList& l9, RhoCandList& l10, const char* name ) { int s = GetLength(); CombineAndAppend(l1, l2, l3, l4, l5, l6, l7, l8, l9, l10); SetType(name, s); };
121 
122  // with type as int (pdgtype)
123  void Combine ( RhoCandList& l1, RhoCandList& l2, Int_t pdgcode ) { Combine(l1, l2); SetType(pdgcode); }
124  void Combine ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, Int_t pdgcode ) { Combine(l1, l2, l3); SetType(pdgcode); }
125  void Combine ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, RhoCandList& l4, Int_t pdgcode ) { Combine(l1, l2, l3, l4); SetType(pdgcode); }
126  void Combine ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, RhoCandList& l4, RhoCandList& l5, Int_t pdgcode ) { Combine(l1, l2, l3, l4, l5); SetType(pdgcode); }
127  void Combine ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, RhoCandList& l4, RhoCandList& l5, RhoCandList& l6, Int_t pdgcode ){ Combine(l1, l2, l3, l4, l5, l6); SetType(pdgcode); };//added 03/2017 R.Kliemt
128  void Combine ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, RhoCandList& l4, RhoCandList& l5, RhoCandList& l6, RhoCandList& l7, Int_t pdgcode ){ Combine(l1, l2, l3, l4, l5, l6, l7); SetType(pdgcode); };//added 03/2017 R.Kliemt
129  void Combine ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, RhoCandList& l4, RhoCandList& l5, RhoCandList& l6, RhoCandList& l7, RhoCandList& l8, Int_t pdgcode ){ Combine(l1, l2, l3, l4, l5, l6, l7, l8); SetType(pdgcode); };//added 03/2017 R.Kliemt
130  void Combine ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, RhoCandList& l4, RhoCandList& l5, RhoCandList& l6, RhoCandList& l7, RhoCandList& l8, RhoCandList& l9 , Int_t pdgcode ){ Combine(l1, l2, l3, l4, l5, l6, l7, l8, l9); SetType(pdgcode); };//added 03/2017 R.Kliemt
131  void Combine ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, RhoCandList& l4, RhoCandList& l5, RhoCandList& l6, RhoCandList& l7, RhoCandList& l8, RhoCandList& l9, RhoCandList& l10, Int_t pdgcode ){ Combine(l1, l2, l3, l4, l5, l6, l7, l8, l9, l10); SetType(pdgcode); };//added 03/2017 R.Kliemt
132 
133  void CombineAndAppend ( RhoCandList& l1, RhoCandList& l2, Int_t pdgcode ) { int s = GetLength(); CombineAndAppend(l1, l2); SetType(pdgcode, s); }
134  void CombineAndAppend ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, Int_t pdgcode ) { int s = GetLength();CombineAndAppend(l1, l2, l3); SetType(pdgcode, s); }
135  void CombineAndAppend ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, RhoCandList& l4, Int_t pdgcode ) { int s = GetLength(); CombineAndAppend(l1, l2, l3, l4); SetType(pdgcode, s); }
136  void CombineAndAppend ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, RhoCandList& l4, RhoCandList& l5, Int_t pdgcode ) { int s = GetLength(); CombineAndAppend(l1, l2, l3, l4, l5); SetType(pdgcode, s); }
137  void CombineAndAppend ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, RhoCandList& l4, RhoCandList& l5, RhoCandList& l6, Int_t pdgcode ) { int s = GetLength(); CombineAndAppend(l1, l2, l3, l4, l5, l6); SetType(pdgcode, s); };//added 03/2017 R.Kliemt
138  void CombineAndAppend ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, RhoCandList& l4, RhoCandList& l5, RhoCandList& l6, RhoCandList& l7, Int_t pdgcode ) { int s = GetLength(); CombineAndAppend(l1, l2, l3, l4, l5, l6, l7); SetType(pdgcode, s); };//added 03/2017 R.Kliemt
139  void CombineAndAppend ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, RhoCandList& l4, RhoCandList& l5, RhoCandList& l6, RhoCandList& l7, RhoCandList& l8, Int_t pdgcode ) { int s = GetLength(); CombineAndAppend(l1, l2, l3, l4, l5, l6, l7, l8); SetType(pdgcode, s); };//added 03/2017 R.Kliemt
140  void CombineAndAppend ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, RhoCandList& l4, RhoCandList& l5, RhoCandList& l6, RhoCandList& l7, RhoCandList& l8, RhoCandList& l9, Int_t pdgcode ) { int s = GetLength(); CombineAndAppend(l1, l2, l3, l4, l5, l6, l7, l8, l9); SetType(pdgcode, s); };//added 03/2017 R.Kliemt
141  void CombineAndAppend ( RhoCandList& l1, RhoCandList& l2, RhoCandList& l3, RhoCandList& l4, RhoCandList& l5, RhoCandList& l6, RhoCandList& l7, RhoCandList& l8, RhoCandList& l9, RhoCandList& l10, Int_t pdgcode ) { int s = GetLength(); CombineAndAppend(l1, l2, l3, l4, l5, l6, l7, l8, l9, l10); SetType(pdgcode, s); };
142 
143  // set type for complete list or starting from index 'start'
144  void SetType ( const TParticlePDG* pdt, int start=0 );
145  void SetType ( const char* name, int start=0 );
146  void SetType ( Int_t pdgcode, int start=0 );
147 
148  void Select ( RhoParticleSelectorBase* pidmgr );
149  void Select ( RhoCandList& l, RhoParticleSelectorBase* pidmgr );
150  void Select ( RhoCandList& l, Bool_t ( *selfunc ) ( RhoCandidate* ) );
151  Int_t OccurrencesOf ( RhoCandidate* );
152  Int_t Remove ( RhoCandidate* ); // Returns #removed cands
153  Int_t RemoveFamily ( RhoCandidate* ); // Returns #removed cands
154  Int_t RemoveClones(); // Returns #removed cands
155  void Reset() {
156  SetNumberOfTracks ( 0 );
157  }
158  RhoCandidate* Get ( Int_t );
159  RhoCandidate* GetConst ( Int_t ) const;
160 
162  void FillFittedList(RhoCandList &fittedlist);
163 
164  // Analysis functions
165 
166  void Boost ( const TVector3& );
167  Double_t GetTotalEnergy ( Double_t emin=0.0 );
168  TVector3 GetTotalMomentum ( Double_t pmin=0.0 );
169 
170  //operations which work on existing lists
171 
172  void PrintOn ( std::ostream& o=std::cout ) const;
173  void Sort ( int ( *compfunc ) ( const RhoCandidate**, const RhoCandidate** ) );
174 
175  void Remainder ( RhoCandList& );
176 
177  void operator = ( const RhoCandList& );
178  RhoCandidate* operator[] ( Int_t );
179 
180  void SetFast ( Bool_t yesno=kTRUE ) {
181  fFast = yesno;
182  }
183 
184  private:
185  TObjArray* fOwnList; // This holds the candidates
186  Bool_t fFast; // Fast mode = no error matrices
187 
188  ClassDef ( RhoCandList,1 ) //Container for RhoCandidates
189 
190 };
191 
192 // standalone print
194 
195 #endif
void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, const TParticlePDG *pdt)
Definition: RhoCandList.h:93
void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, Int_t pdgcode)
Definition: RhoCandList.h:135
void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, Int_t pdgcode)
Definition: RhoCandList.h:125
void InsertAt(Int_t i, const RhoCandidate *c)
Definition: RhoCandList.cxx:87
void Add(const RhoCandidate *c)
Definition: RhoCandList.h:49
void Combine(RhoCandList &l1, RhoCandList &l2, Int_t pdgcode)
Definition: RhoCandList.h:123
Int_t RemoveClones()
void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, const char *name)
Definition: RhoCandList.h:106
void Append(const RhoCandidate *c)
Definition: RhoCandList.h:52
void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, RhoCandList &l7, RhoCandList &l8, RhoCandList &l9, const char *name)
Definition: RhoCandList.h:119
void Cleanup()
Definition: RhoCandList.cxx:62
TObjArray * fOwnList
Definition: RhoCandList.h:185
void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, Int_t pdgcode)
Definition: RhoCandList.h:133
void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, Int_t pdgcode)
Definition: RhoCandList.h:134
Int_t i
Definition: run_full.C:25
TTree * b
void Combine(RhoCandList &l1, RhoCandList &l2, const char *name)
Definition: RhoCandList.h:102
void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, RhoCandList &l7, RhoCandList &l8, const char *name)
Definition: RhoCandList.h:108
void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, const TParticlePDG *pdt)
Definition: RhoCandList.h:83
void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, const TParticlePDG *pdt)
Definition: RhoCandList.h:84
void SetNumberOfTracks(Int_t)
Definition: RhoCandList.cxx:67
TLorentzVector s
Definition: Pnd2DStar.C:50
Int_t GetLength() const
Definition: RhoCandList.h:46
RhoCandList(const char *name="RhoCandList", UInt_t capacity=512)
Definition: RhoCandList.cxx:28
void Boost(const TVector3 &)
void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, const char *name)
Definition: RhoCandList.h:116
int n
void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, RhoCandList &l7, RhoCandList &l8, RhoCandList &l9, const TParticlePDG *pdt)
Definition: RhoCandList.h:98
TVector3 GetTotalMomentum(Double_t pmin=0.0)
void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, const char *name)
Definition: RhoCandList.h:115
void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, RhoCandList &l7, const char *name)
Definition: RhoCandList.h:117
void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, const char *name)
Definition: RhoCandList.h:103
std::ostream & operator<<(std::ostream &o, const PndEventInfo &a)
RhoCandidate * operator[](Int_t)
void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, RhoCandList &l7, RhoCandList &l8, RhoCandList &l9, RhoCandList &l10, const TParticlePDG *pdt)
Definition: RhoCandList.h:89
void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, RhoCandList &l7, RhoCandList &l8, const char *name)
Definition: RhoCandList.h:118
void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, const TParticlePDG *pdt)
Definition: RhoCandList.h:82
void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, RhoCandList &l7, RhoCandList &l8, RhoCandList &l9, Int_t pdgcode)
Definition: RhoCandList.h:130
void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, const TParticlePDG *pdt)
Definition: RhoCandList.h:95
void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, RhoCandList &l7, const TParticlePDG *pdt)
Definition: RhoCandList.h:86
void Reset()
Definition: RhoCandList.h:155
void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, const char *name)
Definition: RhoCandList.h:105
void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, RhoCandList &l7, RhoCandList &l8, RhoCandList &l9, RhoCandList &l10, Int_t pdgcode)
Definition: RhoCandList.h:131
Bool_t fFast
Definition: RhoCandList.h:186
void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, RhoCandList &l7, RhoCandList &l8, const TParticlePDG *pdt)
Definition: RhoCandList.h:87
void CombineAndAppend(RhoCandList &l1, RhoCandList &l2)
void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, RhoCandList &l7, RhoCandList &l8, RhoCandList &l9, RhoCandList &l10, const TParticlePDG *pdt)
Definition: RhoCandList.h:99
void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, RhoCandList &l7, RhoCandList &l8, Int_t pdgcode)
Definition: RhoCandList.h:129
void Combine(RhoCandList &l1, RhoCandList &l2)
Double_t
Int_t GetNumberOfCandidates() const
Definition: RhoCandList.h:43
void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, RhoCandList &l7, RhoCandList &l8, RhoCandList &l9, RhoCandList &l10, const char *name)
Definition: RhoCandList.h:120
void operator=(const RhoCandList &)
void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, const char *name)
Definition: RhoCandList.h:112
void Select(RhoParticleSelectorBase *pidmgr)
void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, RhoCandList &l7, Int_t pdgcode)
Definition: RhoCandList.h:128
void SetType(const TParticlePDG *pdt, int start=0)
void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, Int_t pdgcode)
Definition: RhoCandList.h:137
void SetFast(Bool_t yesno=kTRUE)
Definition: RhoCandList.h:180
void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, RhoCandList &l7, RhoCandList &l8, Int_t pdgcode)
Definition: RhoCandList.h:139
void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, RhoCandList &l7, RhoCandList &l8, const TParticlePDG *pdt)
Definition: RhoCandList.h:97
Int_t Remove(RhoCandidate *)
TString name
void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, const TParticlePDG *pdt)
Definition: RhoCandList.h:92
Int_t GetNumberOfTracks() const
Definition: RhoCandList.cxx:72
void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, RhoCandList &l7, const char *name)
Definition: RhoCandList.h:107
Int_t RemoveFamily(RhoCandidate *)
void Sort(int(*compfunc)(const RhoCandidate **, const RhoCandidate **))
Int_t OccurrencesOf(RhoCandidate *)
void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, RhoCandList &l7, RhoCandList &l8, RhoCandList &l9, RhoCandList &l10, Int_t pdgcode)
Definition: RhoCandList.h:141
void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, Int_t pdgcode)
Definition: RhoCandList.h:127
void Remainder(RhoCandList &)
virtual ~RhoCandList()
Definition: RhoCandList.cxx:52
void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, const char *name)
Definition: RhoCandList.h:104
void PrintOn(std::ostream &o=std::cout) const
void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, RhoCandList &l7, RhoCandList &l8, RhoCandList &l9, const TParticlePDG *pdt)
Definition: RhoCandList.h:88
void FillFittedList(RhoCandList &fittedlist)
void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, RhoCandList &l7, Int_t pdgcode)
Definition: RhoCandList.h:138
void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, RhoCandList &l7, RhoCandList &l8, RhoCandList &l9, RhoCandList &l10, const char *name)
Definition: RhoCandList.h:110
void Put(const RhoCandidate *, Int_t i=-1)
Definition: RhoCandList.cxx:77
void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, Int_t pdgcode)
Definition: RhoCandList.h:136
void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, const char *name)
Definition: RhoCandList.h:113
void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, const TParticlePDG *pdt)
Definition: RhoCandList.h:85
void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, const TParticlePDG *pdt)
Definition: RhoCandList.h:91
RhoCandidate * GetConst(Int_t) const
void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, Int_t pdgcode)
Definition: RhoCandList.h:124
void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, RhoCandList &l7, RhoCandList &l8, RhoCandList &l9, Int_t pdgcode)
Definition: RhoCandList.h:140
void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, Int_t pdgcode)
Definition: RhoCandList.h:126
void Combine(RhoCandList &l1, RhoCandList &l2, const TParticlePDG *pdt)
Definition: RhoCandList.h:81
void SetNumberOfCandidates(Int_t n)
Definition: RhoCandList.h:39
Double_t GetTotalEnergy(Double_t emin=0.0)
RhoCandList * GetFittedList()
void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, const TParticlePDG *pdt)
Definition: RhoCandList.h:94
void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, RhoCandList &l7, const TParticlePDG *pdt)
Definition: RhoCandList.h:96
RhoCandidate * Get(Int_t)
Definition: RhoCandList.cxx:94
void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, RhoCandList &l7, RhoCandList &l8, RhoCandList &l9, const char *name)
Definition: RhoCandList.h:109
void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, const char *name)
Definition: RhoCandList.h:114