Belle II Software development
RecoParticle.h
1/**************************************************************************
2 * basf2 (Belle II Analysis Software Framework) *
3 * Author: The Belle II Collaboration *
4 * External Contributor: Wouter Hulsbergen *
5 * *
6 * See git log for contributors and copyright holders. *
7 * This file is licensed under LGPL-3.0, see LICENSE.md. *
8 **************************************************************************/
9#pragma once
10
11#include <analysis/VertexFitting/TreeFitter/ParticleBase.h>
12
13namespace TreeFitter {
14
16 class RecoParticle : public ParticleBase {
17
18 public:
19
22
24 virtual ~RecoParticle() {};
25
27 virtual ErrCode initMotherlessParticle(FitParams& fitparams) override;
28
30 virtual int dimM() const = 0;
31
33 virtual std::string parname(int index) const override;
34
39 virtual int dim() const override { return 3; }
40
42 virtual int momIndex() const override { return index(); }
43
45 virtual bool hasEnergy() const override { return false; }
46
48 virtual ErrCode projectRecoConstraint(const FitParams& fitparams, Projection& p) const = 0;
49
51 virtual ErrCode projectConstraint(Constraint::Type, const FitParams&, Projection&) const override;
52
53 };
54
55}
Class to store reconstructed particles.
Definition Particle.h:76
Type
type of constraints the order of these constraints is important: it is the order in which they are ap...
Definition Constraint.h:27
abstract errorocode be aware that the default is success
Definition ErrCode.h:14
Class to store and manage fitparams (statevector)
Definition FitParams.h:20
ParticleBase(Belle2::Particle *particle, const ParticleBase *mother, const ConstraintConfiguration *config=nullptr)
default constructor
int index() const
get index
const ParticleBase * mother() const
getMother() / hasMother()
class to store the projected residuals and the corresponding jacobian as well as the covariance matri...
Definition Projection.h:18
virtual ~RecoParticle()
destructor
virtual ErrCode projectRecoConstraint(const FitParams &fitparams, Projection &p) const =0
abstract projection
virtual std::string parname(int index) const override
name
virtual int dim() const override
this here sets the size in the state vector we are only interested in the momenta of photons,...
virtual ErrCode projectConstraint(Constraint::Type, const FitParams &, Projection &) const override
abstract abstract projection
virtual int momIndex() const override
get momentum index
virtual bool hasEnergy() const override
has an energy in the statevector?
virtual ErrCode initMotherlessParticle(FitParams &fitparams) override
init particle without mother
virtual int dimM() const =0
dimension of the constraint
RecoParticle(Belle2::Particle *bc, const ParticleBase *mother)
constructor