Belle II Software development
SVDRecoConfiguration.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
9#pragma once
10#include "TObject.h"
11#include "TString.h"
12
13namespace Belle2 {
22 class SVDRecoConfiguration: public TObject {
23 public:
27 SVDRecoConfiguration(const TString& uniqueID = "")
28 : m_uniqueID(uniqueID)
31 , m_chargeRecoWith6Samples("MaxSample")
32 , m_chargeRecoWith3Samples("MaxSample")
45 {};
46
57
68
79
80
91
102
103
108 Bool_t isSVDTimeGroupingEnabled(const Int_t& numberOfAcquiredSamples) const
109 {
110 if (numberOfAcquiredSamples == 6)
112 else if (numberOfAcquiredSamples == 3)
114 else
115 return false;
116 }
121 Bool_t isSVDGroupInfoUsedInSPCreator(const Int_t& numberOfAcquiredSamples) const
122 {
123 if (numberOfAcquiredSamples == 6)
125 else if (numberOfAcquiredSamples == 3)
127 else
128 return false;
129 }
130
135 void setTimeRecoWith6Samples(TString timeRecoWith6Samples)
136 {
137 m_timeRecoWith6Samples = TString(timeRecoWith6Samples);
138 }
143 void setTimeRecoWith3Samples(TString timeRecoWith3Samples)
144 {
145 m_timeRecoWith3Samples = TString(timeRecoWith3Samples);
146 }
147
152 void setChargeRecoWith6Samples(TString chargeRecoWith6Samples)
153 {
154 m_chargeRecoWith6Samples = TString(chargeRecoWith6Samples);
155 }
160 void setChargeRecoWith3Samples(TString chargeRecoWith3Samples)
161 {
162 m_chargeRecoWith3Samples = TString(chargeRecoWith3Samples);
163 }
164
169 void setPositionRecoWith6Samples(TString positionRecoWith6Samples)
170 {
171 m_positionRecoWith6Samples = TString(positionRecoWith6Samples);
172 }
177 void setPositionRecoWith3Samples(TString positionRecoWith3Samples)
178 {
179 m_positionRecoWith3Samples = TString(positionRecoWith3Samples);
180 }
181
182
187 void setStripTimeRecoWith6Samples(TString timeStripRecoWith6Samples)
188 {
189 m_stripTimeRecoWith6Samples = TString(timeStripRecoWith6Samples);
190 }
195 void setStripTimeRecoWith3Samples(TString timeStripRecoWith3Samples)
196 {
197 m_stripTimeRecoWith3Samples = TString(timeStripRecoWith3Samples);
198 }
199
204 void setStripChargeRecoWith6Samples(TString chargeStripRecoWith6Samples)
205 {
206 m_stripChargeRecoWith6Samples = TString(chargeStripRecoWith6Samples);
207 }
212 void setStripChargeRecoWith3Samples(TString chargeStripRecoWith3Samples)
213 {
214 m_stripChargeRecoWith3Samples = TString(chargeStripRecoWith3Samples);
215 }
216
221 void setStateOfSVDTimeGrouping(const Int_t& numberOfAcquiredSamples, const Bool_t& state = false)
222 {
223 if (numberOfAcquiredSamples == 3)
225 else if (numberOfAcquiredSamples == 6)
227 }
232 void setUseOfSVDGroupInfoInSPCreator(const Int_t& numberOfAcquiredSamples, const Bool_t& state = false)
233 {
234 if (numberOfAcquiredSamples == 3)
236 else if (numberOfAcquiredSamples == 6)
238 }
239
243 TString get_uniqueID() const {return m_uniqueID;}
244
249 Bool_t useSVDSpacePointSNRFraction(const Int_t& numberOfAcquiredSamples) const
250 {
251 if (numberOfAcquiredSamples == 6)
253 else if (numberOfAcquiredSamples == 3)
255 else
256 return false;
257 }
258
263 void setUseOfSVDSpacePointSNRFraction(const Int_t& numberOfAcquiredSamples, const Bool_t& state = false)
264 {
265 if (numberOfAcquiredSamples == 3)
267 else if (numberOfAcquiredSamples == 6)
269 }
270
272 static std::string name;
273
274 private:
275
277 TString m_uniqueID;
278
287
292
293
302
311
316
319 };
320
322}
This class store the reconstruction configuration of SVD.
TString m_uniqueID
unique identifier of the SVD reconstruction configuration payload
Bool_t m_useSVDGroupInfoInSPfor3Samples
Use SVD clusters groupId in SVDSpacePointCreator for 3-sample acquisition mode.
void setChargeRecoWith6Samples(TString chargeRecoWith6Samples)
Set the algorithm to be used for cluster charge computation in 6-sample acquisition mode.
void setStripTimeRecoWith3Samples(TString timeStripRecoWith3Samples)
Set the algorithm to be used for strip time computation in 3-sample acquisition mode.
void setTimeRecoWith6Samples(TString timeRecoWith6Samples)
Set the algorithm to be used for cluster time computation in 6-sample acquisition mode.
Bool_t useSVDSpacePointSNRFraction(const Int_t &numberOfAcquiredSamples) const
Returns the parameter which turns On/Off usage of SVDSpacePointSNRFractionSelector in the SVDSpacePoi...
void setUseOfSVDGroupInfoInSPCreator(const Int_t &numberOfAcquiredSamples, const Bool_t &state=false)
Set the parameter which turns On/Off usage of SVD cluster grouping in the SVDSpacePointCreator for 3/...
Bool_t isSVDGroupInfoUsedInSPCreator(const Int_t &numberOfAcquiredSamples) const
Returns the parameter which turns On/Off usage of SVD cluster grouping in the SVDSpacePointCreator fo...
void setStripTimeRecoWith6Samples(TString timeStripRecoWith6Samples)
Set the algorithm to be used for strip time computation in 6-sample acquisition mode.
void setPositionRecoWith3Samples(TString positionRecoWith3Samples)
Set the algorithm to be used for cluster position computation in 3-sample acquisition mode.
SVDRecoConfiguration(const TString &uniqueID="")
Default constructor.
void setStateOfSVDTimeGrouping(const Int_t &numberOfAcquiredSamples, const Bool_t &state=false)
Set the parameter which turns On/Off SVD cluster grouping in 3/6-sample acquisition mode.
TString getStripTimeRecoWith3Samples() const
Returns the TString corresponding to the algorithm to be used for the strip time computation in 3-sam...
TString m_chargeRecoWith3Samples
cluster charge reconstruction algorithm used in 3-sample acquisition mode
TString getPositionRecoWith6Samples() const
Returns the TString corresponding to the algorithm to be used for the cluster position computation in...
TString get_uniqueID() const
Get the unique ID of the calibration.
Bool_t m_assignSVDGroupIn6Samples
Assign groupId to SVD clusters in 6-sample acquisition mode.
TString m_positionRecoWith3Samples
cluster position reconstruction algorithm used in 3-sample acquisition mode
TString m_stripTimeRecoWith3Samples
strip time reconstruction algorithm used in 3-sample acquisition mode
TString m_timeRecoWith6Samples
cluster time reconstruction algorithm used in 6-sample acquisition mode
TString getPositionRecoWith3Samples() const
Returns the TString corresponding to the algorithm to be used for the cluster position computation in...
ClassDef(SVDRecoConfiguration, 3)
needed by root
TString getStripChargeRecoWith3Samples() const
Returns the TString corresponding to the algorithm to be used for the strip charge computation in 3-s...
void setUseOfSVDSpacePointSNRFraction(const Int_t &numberOfAcquiredSamples, const Bool_t &state=false)
Set the parameter which turns On/Off usage of SVDSpacePointSNRFractionSelector in the SVDSpacePointCr...
static std::string name
name of the payload
TString m_timeRecoWith3Samples
cluster time reconstruction algorithm used in 3-sample acquisition mode
TString m_stripChargeRecoWith6Samples
strip charge reconstruction algorithm used in 6-sample acquisition mode
void setChargeRecoWith3Samples(TString chargeRecoWith3Samples)
Set the algorithm to be used for cluster charge computation in 3-sample acquisition mode.
TString m_stripTimeRecoWith6Samples
strip time reconstruction algorithm used in 6-sample acquisition mode
TString getStripTimeRecoWith6Samples() const
Returns the TString corresponding to the algorithm to be used for the strip time computation in 6-sam...
void setStripChargeRecoWith3Samples(TString chargeStripRecoWith3Samples)
Set the algorithm to be used for strip charge computation in 3-sample acquisition mode.
TString getTimeRecoWith6Samples() const
Returns the TString corresponding to the algorithm to be used for the cluster time computation in 6-s...
TString m_positionRecoWith6Samples
cluster position reconstruction algorithm used in 6-sample acquisition mode
TString getChargeRecoWith3Samples() const
Returns the TString corresponding to the algorithm to be used for the cluster charge computation in 3...
Bool_t m_assignSVDGroupIn3Samples
Assign groupId to SVD clusters in 3-sample acquisition mode.
void setTimeRecoWith3Samples(TString timeRecoWith3Samples)
Set the algorithm to be used for cluster time computation in 3-sample acquisition mode.
void setPositionRecoWith6Samples(TString positionRecoWith6Samples)
Set the algorithm to be used for cluster position computation in 6-sample acquisition mode.
Bool_t m_useSVDSpacePointSNRFractionFor3Samples
Use SVDSpacePointSNRFractionSelector in SVDSpacePointCreator for 3-sample acquisition mode.
void setStripChargeRecoWith6Samples(TString chargeStripRecoWith6Samples)
Set the algorithm to be used for strip charge computation in 6-sample acquisition mode.
Bool_t m_useSVDGroupInfoInSPfor6Samples
Use SVD clusters groupId in SVDSpacePointCreator for 6-sample acquisition mode.
TString m_stripChargeRecoWith3Samples
strip charge reconstruction algorithm used in 3-sample acquisition mode
TString getStripChargeRecoWith6Samples() const
Returns the TString corresponding to the algorithm to be used for the strip charge computation in 6-s...
Bool_t m_useSVDSpacePointSNRFractionFor6Samples
Use SVDSpacePointSNRFractionSelector in SVDSpacePointCreator for 6-sample acquisition mode.
TString m_chargeRecoWith6Samples
cluster charge reconstruction algorithm used in 6-sample acquisition mode
TString getChargeRecoWith6Samples() const
Returns the TString corresponding to the algorithm to be used for the cluster charge computation in 6...
Bool_t isSVDTimeGroupingEnabled(const Int_t &numberOfAcquiredSamples) const
Returns the parameter which turns On/Off SVD cluster grouping in 3/6-sample acquisition mode.
TString getTimeRecoWith3Samples() const
Returns the TString corresponding to the algorithm to be used for the cluster time computation in 3-s...
Abstract base class for different kinds of events.