Belle II Software  release-08-01-10
GenDTag.h
1 /**************************************************************************
2  * basf2 (Belle II Analysis Software Framework) *
3  * Author: The Belle II Collaboration *
4  * *
5  * See git log for contributors and copyright holders. *
6  * This file is licensed under LGPL-3.0, see LICENSE.md. *
7  **************************************************************************/
8 
9 #pragma once
10 
11 #include <vector>
12 
13 namespace Belle2 {
22  class GenDTag {
23 
24  public:
25 
30 
31  int Mode_Dst_plus(std::vector<int> genDAU);
32  int Mode_Dst_minus(std::vector<int> genDAU);
33  int Mode_Ds_plus(std::vector<int> genDAU);
34  int Mode_Ds_minus(std::vector<int> genDAU);
35  int Mode_D_plus(std::vector<int> genDAU);
36  int Mode_D_minus(std::vector<int> genDAU);
37  int Mode_D0(std::vector<int> genDAU);
38  int Mode_anti_D0(std::vector<int> genDAU);
40  private:
41  int m_nPhotos;
43  bool PcheckDecay(std::vector<int> gp, int da1, int da2);
45  bool PcheckDecay(std::vector<int> gp, int da1, int da2, int da3);
47  bool PcheckDecay(std::vector<int> gp, int da1, int da2, int da3, int da4);
49  bool PcheckDecay(std::vector<int> gp, int da1, int da2, int da3, int da4, int da5);
51  bool PcheckDecay(std::vector<int> gp, int da1, int da2, int da3, int da4, int da5, int da6);
53  bool PcheckDecay(std::vector<int> gp, int da1, int da2, int da3, int da4, int da5, int da6, int da7);
55  bool PcheckDecay(std::vector<int> gp, int da1, int da2, int da3, int da4, int da5, int da6, int da7, int da8);
56  };
57 
59 } //End of Belle2 namespace
Class to determine generated decay mode of D*, Ds, D0, D+, and their anti-particles.
Definition: GenDTag.h:22
int Mode_Ds_minus(std::vector< int > genDAU)
returns Ds- mode identifier
Definition: GenDTag.cc:383
int Mode_Dst_plus(std::vector< int > genDAU)
returns D*+ mode identifier
Definition: GenDTag.cc:95
int Mode_anti_D0(std::vector< int > genDAU)
returns D0bar mode identifier
Definition: GenDTag.cc:1691
int Mode_D0(std::vector< int > genDAU)
returns D0 mode identifier
Definition: GenDTag.cc:1277
int Mode_Ds_plus(std::vector< int > genDAU)
returns Ds+ mode identifier
Definition: GenDTag.cc:125
int m_nPhotos
number of photons
Definition: GenDTag.h:41
int Mode_D_minus(std::vector< int > genDAU)
returns D- mode identifier
Definition: GenDTag.cc:959
bool PcheckDecay(std::vector< int > gp, int da1, int da2)
check decay with two daughters
Definition: GenDTag.cc:16
int Mode_Dst_minus(std::vector< int > genDAU)
returns D*- mode identifier
Definition: GenDTag.cc:110
int Mode_D_plus(std::vector< int > genDAU)
returns D+ mode identifier
Definition: GenDTag.cc:641
GenDTag()
Constructor.
Abstract base class for different kinds of events.