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  public:
30  // Constructor
31  RhoCandList(const char *name = "RhoCandList", UInt_t capacity = 512);
33  // Destructor
34  virtual ~RhoCandList();
35  void Cleanup();
36 
37  void SetNumberOfTracks(Int_t);
39  Int_t GetNumberOfTracks() const;
40  Int_t GetNumberOfCandidates() const { return GetNumberOfTracks(); }
41  Int_t GetLength() const { return GetNumberOfTracks(); }
42  void Add(const RhoCandidate *c) { Put(c); }
43  void Append(const RhoCandidate *c) { Put(c); }
44  void Append(RhoCandList &l, RhoParticleSelectorBase *pidmgr = nullptr);
45  void Put(const RhoCandidate *, Int_t i = -1);
46  void InsertAt(Int_t i, const RhoCandidate *c);
47 
48  // without type
49  void Combine(RhoCandList &l1, RhoCandList &l2);
50  void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3); // added 06/08 K.Goetzen
51  void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4); // added 06/08 K.Goetzen
52  void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5); // added 06/08 K.Goetzen
53  void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6); // added 03/2017 R.Kliemt
54  void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, RhoCandList &l7); // added 03/2017 R.Kliemt
55  void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, RhoCandList &l7, RhoCandList &l8); // added 03/2017 R.Kliemt
57  RhoCandList &l9); // added 03/2017 R.Kliemt
59  RhoCandList &l10); // added 03/2017 R.Kliemt
60 
62  void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3); // added 06/08 K.Goetzen
63  void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4); // added 06/08 K.Goetzen
64  void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5); // added 06/08 K.Goetzen
65  void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6); // added 03/2017 R.Kliemt
66  void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, RhoCandList &l7); // added 03/2017 R.Kliemt
68  RhoCandList &l8); // added 03/2017 R.Kliemt
70  RhoCandList &l9); // added 03/2017 R.Kliemt
72  RhoCandList &l10);
73 
74  // with type as TParticlePDG
75  void Combine(RhoCandList &l1, RhoCandList &l2, const TParticlePDG *pdt)
76  {
77  Combine(l1, l2);
78  SetType(pdt);
79  }
80  void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, const TParticlePDG *pdt)
81  {
82  Combine(l1, l2, l3);
83  SetType(pdt);
84  }
85  void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, const TParticlePDG *pdt)
86  {
87  Combine(l1, l2, l3, l4);
88  SetType(pdt);
89  }
90  void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, const TParticlePDG *pdt)
91  {
92  Combine(l1, l2, l3, l4, l5);
93  SetType(pdt);
94  }
95  void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, const TParticlePDG *pdt)
96  {
97  Combine(l1, l2, l3, l4, l5, l6);
98  SetType(pdt);
99  }; // added 03/2017 R.Kliemt
100  void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, RhoCandList &l7, const TParticlePDG *pdt)
101  {
102  Combine(l1, l2, l3, l4, l5, l6, l7);
103  SetType(pdt);
104  }; // added 03/2017 R.Kliemt
105  void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, RhoCandList &l7, RhoCandList &l8, const TParticlePDG *pdt)
106  {
107  Combine(l1, l2, l3, l4, l5, l6, l7, l8);
108  SetType(pdt);
109  }; // added 03/2017 R.Kliemt
111  const TParticlePDG *pdt)
112  {
113  Combine(l1, l2, l3, l4, l5, l6, l7, l8, l9);
114  SetType(pdt);
115  }; // added 03/2017 R.Kliemt
117  RhoCandList &l10, const TParticlePDG *pdt)
118  {
119  Combine(l1, l2, l3, l4, l5, l6, l7, l8, l9, l10);
120  SetType(pdt);
121  }; // added 03/2017 R.Kliemt
122 
123  void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, const TParticlePDG *pdt)
124  {
125  int s = GetLength();
126  CombineAndAppend(l1, l2);
127  SetType(pdt, s);
128  }
129  void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, const TParticlePDG *pdt)
130  {
131  int s = GetLength();
132  CombineAndAppend(l1, l2, l3);
133  SetType(pdt, s);
134  }
135  void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, const TParticlePDG *pdt)
136  {
137  int s = GetLength();
138  CombineAndAppend(l1, l2, l3, l4);
139  SetType(pdt, s);
140  }
141  void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, const TParticlePDG *pdt)
142  {
143  int s = GetLength();
144  CombineAndAppend(l1, l2, l3, l4, l5);
145  SetType(pdt, s);
146  }
147  void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, const TParticlePDG *pdt)
148  {
149  int s = GetLength();
150  CombineAndAppend(l1, l2, l3, l4, l5, l6);
151  SetType(pdt, s);
152  }; // added 03/2017 R.Kliemt
153  void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, RhoCandList &l7, const TParticlePDG *pdt)
154  {
155  int s = GetLength();
156  CombineAndAppend(l1, l2, l3, l4, l5, l6, l7);
157  SetType(pdt, s);
158  }; // added 03/2017 R.Kliemt
159  void
160  CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, RhoCandList &l7, RhoCandList &l8, const TParticlePDG *pdt)
161  {
162  int s = GetLength();
163  CombineAndAppend(l1, l2, l3, l4, l5, l6, l7, l8);
164  SetType(pdt, s);
165  }; // added 03/2017 R.Kliemt
167  const TParticlePDG *pdt)
168  {
169  int s = GetLength();
170  CombineAndAppend(l1, l2, l3, l4, l5, l6, l7, l8, l9);
171  SetType(pdt, s);
172  }; // added 03/2017 R.Kliemt
174  RhoCandList &l10, const TParticlePDG *pdt)
175  {
176  int s = GetLength();
177  CombineAndAppend(l1, l2, l3, l4, l5, l6, l7, l8, l9, l10);
178  SetType(pdt, s);
179  };
180 
181  // with type as char* (name)
182  void Combine(RhoCandList &l1, RhoCandList &l2, const char *name)
183  {
184  Combine(l1, l2);
185  SetType(name);
186  }
187  void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, const char *name)
188  {
189  Combine(l1, l2, l3);
190  SetType(name);
191  }
192  void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, const char *name)
193  {
194  Combine(l1, l2, l3, l4);
195  SetType(name);
196  }
197  void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, const char *name)
198  {
199  Combine(l1, l2, l3, l4, l5);
200  SetType(name);
201  }
202  void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, const char *name)
203  {
204  Combine(l1, l2, l3, l4, l5, l6);
205  SetType(name);
206  }; // added 03/2017 R.Kliemt
207  void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, RhoCandList &l7, const char *name)
208  {
209  Combine(l1, l2, l3, l4, l5, l6, l7);
210  SetType(name);
211  }; // added 03/2017 R.Kliemt
212  void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, RhoCandList &l7, RhoCandList &l8, const char *name)
213  {
214  Combine(l1, l2, l3, l4, l5, l6, l7, l8);
215  SetType(name);
216  }; // added 03/2017 R.Kliemt
217  void
218  Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, RhoCandList &l7, RhoCandList &l8, RhoCandList &l9, const char *name)
219  {
220  Combine(l1, l2, l3, l4, l5, l6, l7, l8, l9);
221  SetType(name);
222  }; // added 03/2017 R.Kliemt
224  RhoCandList &l10, const char *name)
225  {
226  Combine(l1, l2, l3, l4, l5, l6, l7, l8, l9, l10);
227  SetType(name);
228  }; // added 03/2017 R.Kliemt
229 
230  void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, const char *name)
231  {
232  int s = GetLength();
233  CombineAndAppend(l1, l2);
234  SetType(name, s);
235  }
236  void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, const char *name)
237  {
238  int s = GetLength();
239  CombineAndAppend(l1, l2, l3);
240  SetType(name, s);
241  }
242  void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, const char *name)
243  {
244  int s = GetLength();
245  CombineAndAppend(l1, l2, l3, l4);
246  SetType(name, s);
247  }
248  void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, const char *name)
249  {
250  int s = GetLength();
251  CombineAndAppend(l1, l2, l3, l4, l5);
252  SetType(name, s);
253  }
254  void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, const char *name)
255  {
256  int s = GetLength();
257  CombineAndAppend(l1, l2, l3, l4, l5, l6);
258  SetType(name, s);
259  }; // added 03/2017 R.Kliemt
260  void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, RhoCandList &l7, const char *name)
261  {
262  int s = GetLength();
263  CombineAndAppend(l1, l2, l3, l4, l5, l6, l7);
264  SetType(name, s);
265  }; // added 03/2017 R.Kliemt
266  void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, RhoCandList &l7, RhoCandList &l8, const char *name)
267  {
268  int s = GetLength();
269  CombineAndAppend(l1, l2, l3, l4, l5, l6, l7, l8);
270  SetType(name, s);
271  }; // added 03/2017 R.Kliemt
273  const char *name)
274  {
275  int s = GetLength();
276  CombineAndAppend(l1, l2, l3, l4, l5, l6, l7, l8, l9);
277  SetType(name, s);
278  }; // added 03/2017 R.Kliemt
280  RhoCandList &l10, const char *name)
281  {
282  int s = GetLength();
283  CombineAndAppend(l1, l2, l3, l4, l5, l6, l7, l8, l9, l10);
284  SetType(name, s);
285  };
286 
287  // with type as int (pdgtype)
288  void Combine(RhoCandList &l1, RhoCandList &l2, Int_t pdgcode)
289  {
290  Combine(l1, l2);
291  SetType(pdgcode);
292  }
293  void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, Int_t pdgcode)
294  {
295  Combine(l1, l2, l3);
296  SetType(pdgcode);
297  }
298  void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, Int_t pdgcode)
299  {
300  Combine(l1, l2, l3, l4);
301  SetType(pdgcode);
302  }
303  void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, Int_t pdgcode)
304  {
305  Combine(l1, l2, l3, l4, l5);
306  SetType(pdgcode);
307  }
308  void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, Int_t pdgcode)
309  {
310  Combine(l1, l2, l3, l4, l5, l6);
311  SetType(pdgcode);
312  }; // added 03/2017 R.Kliemt
313  void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, RhoCandList &l7, Int_t pdgcode)
314  {
315  Combine(l1, l2, l3, l4, l5, l6, l7);
316  SetType(pdgcode);
317  }; // added 03/2017 R.Kliemt
318  void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, RhoCandList &l7, RhoCandList &l8, Int_t pdgcode)
319  {
320  Combine(l1, l2, l3, l4, l5, l6, l7, l8);
321  SetType(pdgcode);
322  }; // added 03/2017 R.Kliemt
323  void
325  {
326  Combine(l1, l2, l3, l4, l5, l6, l7, l8, l9);
327  SetType(pdgcode);
328  }; // added 03/2017 R.Kliemt
330  RhoCandList &l10, Int_t pdgcode)
331  {
332  Combine(l1, l2, l3, l4, l5, l6, l7, l8, l9, l10);
333  SetType(pdgcode);
334  }; // added 03/2017 R.Kliemt
335 
336  void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, Int_t pdgcode)
337  {
338  int s = GetLength();
339  CombineAndAppend(l1, l2);
340  SetType(pdgcode, s);
341  }
342  void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, Int_t pdgcode)
343  {
344  int s = GetLength();
345  CombineAndAppend(l1, l2, l3);
346  SetType(pdgcode, s);
347  }
348  void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, Int_t pdgcode)
349  {
350  int s = GetLength();
351  CombineAndAppend(l1, l2, l3, l4);
352  SetType(pdgcode, s);
353  }
354  void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, Int_t pdgcode)
355  {
356  int s = GetLength();
357  CombineAndAppend(l1, l2, l3, l4, l5);
358  SetType(pdgcode, s);
359  }
360  void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, Int_t pdgcode)
361  {
362  int s = GetLength();
363  CombineAndAppend(l1, l2, l3, l4, l5, l6);
364  SetType(pdgcode, s);
365  }; // added 03/2017 R.Kliemt
366  void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, RhoCandList &l7, Int_t pdgcode)
367  {
368  int s = GetLength();
369  CombineAndAppend(l1, l2, l3, l4, l5, l6, l7);
370  SetType(pdgcode, s);
371  }; // added 03/2017 R.Kliemt
373  {
374  int s = GetLength();
375  CombineAndAppend(l1, l2, l3, l4, l5, l6, l7, l8);
376  SetType(pdgcode, s);
377  }; // added 03/2017 R.Kliemt
379  Int_t pdgcode)
380  {
381  int s = GetLength();
382  CombineAndAppend(l1, l2, l3, l4, l5, l6, l7, l8, l9);
383  SetType(pdgcode, s);
384  }; // added 03/2017 R.Kliemt
386  RhoCandList &l10, Int_t pdgcode)
387  {
388  int s = GetLength();
389  CombineAndAppend(l1, l2, l3, l4, l5, l6, l7, l8, l9, l10);
390  SetType(pdgcode, s);
391  };
392 
393  // set type for complete list or starting from index 'start'
394  void SetType(const TParticlePDG *pdt, int start = 0);
395  void SetType(const char *name, int start = 0);
396  void SetType(Int_t pdgcode, int start = 0);
397 
398  void Select(RhoParticleSelectorBase *pidmgr);
399  void Select(RhoCandList &l, RhoParticleSelectorBase *pidmgr);
400  void Select(RhoCandList &l, Bool_t (*selfunc)(RhoCandidate *));
401  Int_t OccurrencesOf(RhoCandidate *);
402  Int_t Remove(RhoCandidate *); // Returns #removed cands
403  Int_t RemoveFamily(RhoCandidate *); // Returns #removed cands
404  Int_t RemoveClones(); // Returns #removed cands
405  void Reset() { SetNumberOfTracks(0); }
406  RhoCandidate *Get(Int_t);
407  RhoCandidate *GetConst(Int_t) const;
408 
410  void FillFittedList(RhoCandList &fittedlist);
411 
412  // Analysis functions
413 
414  void Boost(const TVector3 &);
415  Double_t GetTotalEnergy(Double_t emin = 0.0);
416  TVector3 GetTotalMomentum(Double_t pmin = 0.0);
417 
418  // operations which work on existing lists
419 
420  void PrintOn(std::ostream &o = std::cout) const;
421  void Sort(int (*compfunc)(const RhoCandidate **, const RhoCandidate **));
422 
423  void Remainder(RhoCandList &);
424 
425  void operator=(const RhoCandList &);
426  RhoCandidate *operator[](Int_t);
427 
428  void SetFast(Bool_t yesno = kTRUE) { fFast = yesno; }
429 
430  private:
431  TObjArray *fOwnList; // This holds the candidates
432  Bool_t fFast; // Fast mode = no error matrices
433 
434  ClassDef(RhoCandList, 1) // Container for RhoCandidates
435 };
436 
437 // standalone print
438 std::ostream &operator<<(std::ostream &o, const RhoCandList &);
439 
440 #endif
void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, const TParticlePDG *pdt)
Definition: RhoCandList.h:135
void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, Int_t pdgcode)
Definition: RhoCandList.h:348
void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, Int_t pdgcode)
Definition: RhoCandList.h:298
void InsertAt(Int_t i, const RhoCandidate *c)
void Add(const RhoCandidate *c)
Definition: RhoCandList.h:42
Int_t GetNumberOfCandidates() const
Definition: RhoCandList.h:40
void Combine(RhoCandList &l1, RhoCandList &l2, Int_t pdgcode)
Definition: RhoCandList.h:288
Int_t RemoveClones()
void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, const char *name)
Definition: RhoCandList.h:202
void Append(const RhoCandidate *c)
Definition: RhoCandList.h:43
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:272
void Cleanup()
Int_t GetNumberOfTracks() const
void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, Int_t pdgcode)
Definition: RhoCandList.h:336
void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, Int_t pdgcode)
Definition: RhoCandList.h:342
void Combine(RhoCandList &l1, RhoCandList &l2, const char *name)
Definition: RhoCandList.h:182
void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, RhoCandList &l7, RhoCandList &l8, const char *name)
Definition: RhoCandList.h:212
void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, const TParticlePDG *pdt)
Definition: RhoCandList.h:85
void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, const TParticlePDG *pdt)
Definition: RhoCandList.h:90
Int_t GetLength() const
Definition: RhoCandList.h:41
void SetNumberOfTracks(Int_t)
RhoCandList(const char *name="RhoCandList", UInt_t capacity=512)
void Boost(const TVector3 &)
void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, const char *name)
Definition: RhoCandList.h:254
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:166
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:248
void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, RhoCandList &l7, const char *name)
Definition: RhoCandList.h:260
void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, const char *name)
Definition: RhoCandList.h:187
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:116
virtual ~RhoCandList()
void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, RhoCandList &l7, RhoCandList &l8, const char *name)
Definition: RhoCandList.h:266
unsigned int i
Definition: P4_F32vec4.h:21
RhoCandList * GetFittedList()
void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, const TParticlePDG *pdt)
Definition: RhoCandList.h:80
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:324
void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, const TParticlePDG *pdt)
Definition: RhoCandList.h:147
void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, RhoCandList &l7, const TParticlePDG *pdt)
Definition: RhoCandList.h:100
void Reset()
Definition: RhoCandList.h:405
void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, const char *name)
Definition: RhoCandList.h:197
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:329
void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, RhoCandList &l7, RhoCandList &l8, const TParticlePDG *pdt)
Definition: RhoCandList.h:105
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:173
void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, RhoCandList &l7, RhoCandList &l8, Int_t pdgcode)
Definition: RhoCandList.h:318
void Combine(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 char *name)
Definition: RhoCandList.h:279
void operator=(const RhoCandList &)
void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, const char *name)
Definition: RhoCandList.h:230
void Select(RhoParticleSelectorBase *pidmgr)
RhoCandidate * GetConst(Int_t) const
void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, RhoCandList &l7, Int_t pdgcode)
Definition: RhoCandList.h:313
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:360
void SetFast(Bool_t yesno=kTRUE)
Definition: RhoCandList.h:428
void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, RhoCandList &l7, RhoCandList &l8, Int_t pdgcode)
Definition: RhoCandList.h:372
void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, RhoCandList &l7, RhoCandList &l8, const TParticlePDG *pdt)
Definition: RhoCandList.h:160
Int_t Remove(RhoCandidate *)
void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, const TParticlePDG *pdt)
Definition: RhoCandList.h:129
void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, RhoCandList &l7, const char *name)
Definition: RhoCandList.h:207
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:385
void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, Int_t pdgcode)
Definition: RhoCandList.h:308
void Remainder(RhoCandList &)
RhoCandidate * operator[](Int_t)
void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, const char *name)
Definition: RhoCandList.h:192
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:110
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:366
void PrintOn(std::ostream &o=std::cout) const
RhoCandidate * Get(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 char *name)
Definition: RhoCandList.h:223
void Put(const RhoCandidate *, Int_t i=-1)
void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, Int_t pdgcode)
Definition: RhoCandList.h:354
void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, const char *name)
Definition: RhoCandList.h:236
void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, const TParticlePDG *pdt)
Definition: RhoCandList.h:95
void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, const TParticlePDG *pdt)
Definition: RhoCandList.h:123
std::ostream & operator<<(std::ostream &o, const RhoCandList &)
void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, Int_t pdgcode)
Definition: RhoCandList.h:293
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:378
void Combine(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, Int_t pdgcode)
Definition: RhoCandList.h:303
void Combine(RhoCandList &l1, RhoCandList &l2, const TParticlePDG *pdt)
Definition: RhoCandList.h:75
void SetNumberOfCandidates(Int_t n)
Definition: RhoCandList.h:38
Double_t GetTotalEnergy(Double_t emin=0.0)
void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, const TParticlePDG *pdt)
Definition: RhoCandList.h:141
void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, RhoCandList &l5, RhoCandList &l6, RhoCandList &l7, const TParticlePDG *pdt)
Definition: RhoCandList.h:153
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:218
void CombineAndAppend(RhoCandList &l1, RhoCandList &l2, RhoCandList &l3, RhoCandList &l4, const char *name)
Definition: RhoCandList.h:242