Belle II Software development
SVDShaperDigitConverter.cc
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#include <tracking/datcon/findlets/SVDShaperDigitConverter.h>
9#include <tracking/datcon/entities/DATCONSVDDigit.h>
10#include <tracking/trackFindingCDC/utilities/StringManipulation.h>
11#include <svd/dataobjects/SVDShaperDigit.h>
12#include <vxd/dataobjects/VxdID.h>
13#include <framework/core/ModuleParamList.h>
14
15using namespace Belle2;
16using namespace TrackFindingCDC;
17
19{
20}
21
22void SVDShaperDigitConverter::exposeParameters(ModuleParamList* moduleParamList, const std::string& prefix)
23{
24 Super::exposeParameters(moduleParamList, prefix);
25
26 moduleParamList->addParameter(TrackFindingCDC::prefixed(prefix, "storeSVDShaperDigitsName"), m_param_storeSVDShaperDigitsName,
27 "StoreArray name of the SVDShaperDigits StoreArray.", m_param_storeSVDShaperDigitsName);
28}
29
31{
33
35}
36
37void SVDShaperDigitConverter::apply(std::vector<DATCONSVDDigit>& svdUDigits, std::vector<DATCONSVDDigit>& svdVDigits)
38{
39 for (auto& shaperdigit : m_storeSVDShaperDigits) {
40
41 const VxdID& sensorid = shaperdigit.getSensorID();
42 bool isu = shaperdigit.isUStrip();
43 short cellid = shaperdigit.getCellID();
44 const DATCONSVDDigit::APVFloatSamples& rawsamples = shaperdigit.getSamples();
45
46 if (isu) {
47 svdUDigits.emplace_back(DATCONSVDDigit(sensorid, isu, cellid, rawsamples));
48 } else {
49 svdVDigits.emplace_back(DATCONSVDDigit(sensorid, isu, cellid, rawsamples));
50 }
51 }
52}
The DATCONSVDDigit class.
std::array< APVFloatSampleType, c_nAPVSamples > APVFloatSamples
Types for array of samples for processing.
The Module parameter list class.
SVDShaperDigitConverter()
Add the subfindlets.
void apply(std::vector< DATCONSVDDigit > &svdUDigits, std::vector< DATCONSVDDigit > &svdVDigits) override
Load in the reco tracks and the hits.
void initialize() override
Create the store arrays.
StoreArray< SVDShaperDigit > m_storeSVDShaperDigits
SVDShaperDigit StoreArray.
std::string m_param_storeSVDShaperDigitsName
SVDShaperDigits StoreArray name.
void exposeParameters(ModuleParamList *moduleParamList, const std::string &prefix) override
Expose the parameters of the sub findlets.
void initialize() override
Receive and dispatch signal before the start of the event processing.
virtual void exposeParameters(ModuleParamList *moduleParamList, const std::string &prefix)
Forward prefixed parameters of this findlet to the module parameter list.
Definition: Findlet.h:69
Class to uniquely identify a any structure of the PXD and SVD.
Definition: VxdID.h:33
void addParameter(const std::string &name, T &paramVariable, const std::string &description, const T &defaultValue)
Adds a new parameter to the module list.
Abstract base class for different kinds of events.