Belle II Software  release-05-02-19
PXDInterceptor.h
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2010 - Belle II Collaboration *
4  * *
5  * Author: The Belle II Collaboration *
6  * Contributors: Giulia Casarosa, Eugenio Paoloni *
7  * *
8  * This software is provided "as is" without any warranty. *
9  **************************************************************************/
10 
11 #pragma once
12 
13 #include <framework/datastore/StoreArray.h>
14 #include <framework/datastore/RelationArray.h>
15 #include <tracking/dataobjects/PXDIntercept.h>
16 #include <tracking/dataobjects/RecoTrack.h>
17 #include <tracking/pxdDataReductionClasses/ROIGeometry.h>
18 #include <tracking/pxdDataReductionClasses/ROIinfo.h>
19 #include <genfit/KalmanFitter.h>
20 
21 
22 namespace Belle2 {
32  class PXDInterceptor {
33 
34  public:
35 
38  PXDInterceptor(const ROIinfo* user_theROIinfo, double toleranceZ, double tolerancePhi);
39 
42  virtual ~PXDInterceptor();
43 
46  void fillInterceptList(StoreArray<PXDIntercept>* listToBeFilled,
47  const StoreArray<RecoTrack>& trackList,
48  RelationArray* recoTrackToPXDIntercepts);
49 
50  private:
51 
52  const float m_pxdLayerRadius[2] = {1.42854, 2.21218};
55  ROIGeometry m_theROIGeometry;
61  void appendIntercepts(StoreArray<PXDIntercept>* interceptList, std::list<ROIDetPlane> planeList, RecoTrack* recoTrack,
62  int recoTrackIndex, RelationArray* recoTrackToPXDIntercepts);
63 
64 
65  };
67 }
Belle2::RelationArray
Low-level class to create/modify relations between StoreArrays.
Definition: RelationArray.h:72
Belle2::PXDInterceptor::m_pxdLayerRadius
const float m_pxdLayerRadius[2]
mean PXD layer radius for both layers
Definition: PXDInterceptor.h:60
Belle2::PXDInterceptor::fillInterceptList
void fillInterceptList(StoreArray< PXDIntercept > *listToBeFilled, const StoreArray< RecoTrack > &trackList, RelationArray *recoTrackToPXDIntercepts)
Fill the list of PXD intecepts corresponding to the list of track candidates.
Definition: PXDInterceptor.cc:32
Belle2::PXDInterceptor::PXDInterceptor
PXDInterceptor(const ROIinfo *user_theROIinfo, double toleranceZ, double tolerancePhi)
Class Constructor.
Definition: PXDInterceptor.cc:21
Belle2::PXDInterceptor::m_theROIGeometry
ROIGeometry m_theROIGeometry
the geometry of the Region Of Interest
Definition: PXDInterceptor.h:63
Belle2::RecoTrack
This is the Reconstruction Event-Data Model Track.
Definition: RecoTrack.h:78
genfit::KalmanFitter
Simple Kalman filter implementation.
Definition: KalmanFitter.h:40
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::PXDInterceptor::m_kalmanFilter
genfit::KalmanFitter m_kalmanFilter
kalman filter object to fit the track
Definition: PXDInterceptor.h:61
ROIinfo
ROIinfo contains the parameters that can be changed by the user in the python script.
Definition: ROIinfo.h:8
Belle2::StoreArray
Accessor to arrays stored in the data store.
Definition: ECLMatchingPerformanceExpertModule.h:33
Belle2::PXDInterceptor::m_theROIinfo
ROIinfo m_theROIinfo
the ROI info structure
Definition: PXDInterceptor.h:65
Belle2::PXDInterceptor::~PXDInterceptor
virtual ~PXDInterceptor()
Destructor.
Definition: PXDInterceptor.cc:27
Belle2::PXDInterceptor::appendIntercepts
void appendIntercepts(StoreArray< PXDIntercept > *interceptList, std::list< ROIDetPlane > planeList, RecoTrack *recoTrack, int recoTrackIndex, RelationArray *recoTrackToPXDIntercepts)
Append the PXDIntercept infos related to the track theTrack to the listToBeFilled.
Definition: PXDInterceptor.cc:75