FairRoot/PandaRoot
InternalParticle.h
Go to the documentation of this file.
1 // ******************************************************
2 // DecayTreeFitter Package
3 // We thank the original author Wouter Hulsbergen
4 // (BaBar, LHCb) for providing the sources.
5 // http://arxiv.org/abs/physics/0503191v1 (2005)
6 // Adaptation & Development for PANDA: Ralf Kliemt (2015)
7 // ******************************************************
8 #ifndef INTERNALPARTICLE_H
9 #define INTERNALPARTICLE_H 1
10 
11 #include "ParticleBase.h"
12 #include <vector>
13 #include "Rtypes.h"
14 
15 namespace DecayTreeFitter
16 {
17 
19  {
20  public:
22  const Configuration& config) ;
23 
24  virtual int dim() const { return mother() ? 8 : 7 ; }
25 
26  virtual ErrCode initPar1(FitParams*) ;
27  virtual ErrCode initPar2(FitParams*) ;
28  virtual int type() const { return kInternalParticle ; }
29 
30  // parameter definition
31  virtual int posIndex() const { return index() ; }
32  virtual int lenIndex() const { return mother() ? index()+3 : -1 ; }
33  virtual int momIndex() const { return mother() ? index()+4 : index() + 3 ; }
34  virtual bool hasEnergy() const { return true ; }
35  virtual bool hasPosition() const { return true ; }
36  virtual std::string parname(int index) const ;
37 
38  // constraints
42  ErrCode projectMassConstraintTwoBody(const FitParams* fitparams,Projection& p) const ;
43  virtual ErrCode projectConstraint(Constraint::Type type, const FitParams* fitparams,Projection& p) const ;
44 
45  // some of that other stuff
46  virtual void addToConstraintList(constraintlist& alist, int depth) const ;
47 
48  //bool swapMotherDaughter(FitParams* fitparams, const ParticleBase* newmother) ;
49 
50  protected:
51  ErrCode initMom( FitParams* fitparams ) const ;
52  private:
55  ClassDef ( InternalParticle,1 )
56  } ;
57 
58 }
59 
60 
61 #endif
virtual ErrCode initPar1(FitParams *)
std::vector< DecayTreeFitter::Constraint > constraintlist
Definition: ParticleBase.h:110
ErrCode projectConversionConstraint(const FitParams *, Projection &p) const
virtual std::string parname(int index) const
virtual ErrCode projectConstraint(Constraint::Type type, const FitParams *fitparams, Projection &p) const
ErrCode projectLifeTimeConstraint(const FitParams *, Projection &) const
virtual ErrCode initPar2(FitParams *)
Double_t p
Definition: anasim.C:58
virtual int index() const
Definition: ParticleBase.h:59
ErrCode projectKineConstraint(const FitParams *, Projection &) const
ErrCode projectMassConstraintTwoBody(const FitParams *fitparams, Projection &p) const
virtual void addToConstraintList(constraintlist &alist, int depth) const
ErrCode initMom(FitParams *fitparams) const
InternalParticle(RhoCandidate *bc, const ParticleBase *mother, const Configuration &config)
virtual bool hasPosition() const
const ParticleBase * mother() const
Definition: ParticleBase.h:60