Hall-D Software  alpha
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
DKinFitConstraint_Mass.h
Go to the documentation of this file.
1 #ifndef _DKinFitConstraints_Mass_
2 #define _DKinFitConstraints_Mass_
3 
4 #include <set>
5 
6 #include "DKinFitParticle.h"
7 #include "DKinFitConstraint.h"
8 
9 using namespace std;
10 
11 class DKinFitter;
12 class DKinFitUtils;
13 
15 {
16  friend class DKinFitter;
17  friend class DKinFitUtils;
18 
19  public:
20 
23 
24  shared_ptr<DKinFitParticle> Get_DecayingParticle(void) const{return dDecayingParticle;}
25  set<shared_ptr<DKinFitParticle>> Get_AllParticles(void) const{return {dDecayingParticle};}
26 
27  char Get_FIndex(void) const{return dFIndex;}
28  void Print_ConstraintInfo(void) const;
29 
30  void Reset(void);
31  void Release(void){dDecayingParticle = nullptr;}
32 
33  private:
34 
35  void Set_FIndex(char locFIndex){dFIndex = locFIndex;}
36  void Set_DecayingParticle(const shared_ptr<DKinFitParticle>& locDecayingParticle){dDecayingParticle = locDecayingParticle;}
37 
38  shared_ptr<DKinFitParticle> dDecayingParticle;
39  char dFIndex; //starting row index of the equation(s) corresponding to these constraints in the dF matrix term
40 };
41 
43 {
44  Reset();
45 }
46 
48 {
49  dFIndex = 0;
50  dDecayingParticle = nullptr;
51 }
52 
54 {
55  cout << "DKinFitConstraint_Mass: Decaying particle PID, pointer: " << endl;
56  cout << dDecayingParticle->Get_PID() << ", " << dDecayingParticle << endl;
57 }
58 
59 #endif // _DKinFitConstraint_Mass_
60 
void Print_ConstraintInfo(void) const
shared_ptr< DKinFitParticle > Get_DecayingParticle(void) const
shared_ptr< DKinFitParticle > dDecayingParticle
void Set_DecayingParticle(const shared_ptr< DKinFitParticle > &locDecayingParticle)
set< shared_ptr< DKinFitParticle > > Get_AllParticles(void) const
void Set_FIndex(char locFIndex)