Belle II Software development
CKFToSVDState.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#pragma once
9#include <tracking/ckf/general/entities/CKFState.h>
10#include <svd/reconstruction/SVDRecoHit.h>
11#include <genfit/SharedPlanePtr.h>
12
13namespace genfit {
14 class MeasuredStateOnPlane;
15}
16
17namespace Belle2 {
22 class RecoTrack;
23 class SpacePoint;
24
26 class CKFToSVDState : public CKFState<RecoTrack, SpacePoint> {
27 public:
29 explicit CKFToSVDState(const SpacePoint* hit);
30
32 explicit CKFToSVDState(const RecoTrack* seed, bool reversed = false);
33
35 unsigned int getGeometricalLayer() const;
36
38 genfit::SharedPlanePtr getPlane(const genfit::MeasuredStateOnPlane& state) const;
39
41 const SVDRecoHit& getRecoHit() const;
42
44 const std::vector<SVDRecoHit>& getRecoHits() const;
45
47 const RecoTrack* getRelatedSVDTrack() const;
48
50 void setRelatedSVDTrack(const RecoTrack* relatedSVDTrack);
51
53 const struct stateCache& getStateCache() const {
54 return m_stateCache;
55 }
56
57 private:
59 std::vector<SVDRecoHit> m_recoHits;
60
62 const RecoTrack* m_relatedSVDTrack = nullptr;
63 };
64
65}
const RecoTrack * getRelatedSVDTrack() const
Return the related SVD track, if we go along one of them (or a nullptr)
const struct stateCache & getStateCache() const
Get the cached data of this state.
unsigned int getGeometricalLayer() const
Extract the real layer this state sits on.
genfit::SharedPlanePtr getPlane(const genfit::MeasuredStateOnPlane &state) const
Return the plane of the first SVD cluster.
std::vector< SVDRecoHit > m_recoHits
Precache the PXDRecoHits for runtime performance reasons.
const std::vector< SVDRecoHit > & getRecoHits() const
Helper function for getting the already created reco hits (runtime reasons)
const SVDRecoHit & getRecoHit() const
Helper function for getting the already created reco hit (runtime reasons)
void setRelatedSVDTrack(const RecoTrack *relatedSVDTrack)
Set the related SVD track, if we go along one of them (or a nullptr)
CKFToSVDState(const SpacePoint *hit)
When constructed by a hit, set the reco hit.
const RecoTrack * m_relatedSVDTrack
The related SVD track, if we go along one of them (or a nullptr)
This is the Reconstruction Event-Data Model Track.
Definition RecoTrack.h:79
SVDRecoHit - an extended form of SVDHit containing geometry information.
Definition SVDRecoHit.h:47
SpacePoint typically is build from 1 PXDCluster or 1-2 SVDClusters.
Definition SpacePoint.h:42
Abstract base class for different kinds of events.