Belle II Software development
SVDRecoChargeFactory.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
11//abstract class:
12#include <svd/reconstruction/SVDClusterCharge.h>
13//derived classes:
14#include <svd/reconstruction/SVDMaxSampleCharge.h>
15#include <svd/reconstruction/SVDSumSamplesCharge.h>
16#include <svd/reconstruction/SVDELS3Charge.h>
17
18namespace Belle2::SVD {
19
24
25 public:
26
31 static SVDClusterCharge* NewCharge(const std::string& description)
32 {
33 if (description == "MaxSample")
34 return new SVDMaxSampleCharge;
35 if (description == "SumSamples")
36 return new SVDSumSamplesCharge;
37 if (description == "ELS3")
38 return new SVDELS3Charge;
39
40 B2WARNING("the SVD cluster charge algorithm is not recognized, using SVDMaxSample!");
41 return new SVDMaxSampleCharge;
42 }
43 };
44
45}
46
Abstract Class representing the SVD cluster charge.
Derived Class representing the SVD cluster charge computed with the ELS3 algorithm.
Definition: SVDELS3Charge.h:26
Derived Class representing the SVD cluster charge computed summing the max sample of each strip.
Cluster Charge Factory Class.
static SVDClusterCharge * NewCharge(const std::string &description)
static function that returns the class to compute the cluster charge
Derived Class representing the SVD cluster charge computed summing the samples of each strip.
Namespace to encapsulate code needed for simulation and reconstrucion of the SVD.
Definition: GeoSVDCreator.h:23