Belle II Software  release-08-01-10
BFieldComponentAbs.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 #include <Math/Vector3D.h>
12 
13 namespace Belle2 {
31 
32  public:
33 
35  BFieldComponentAbs() = default;
36 
38  virtual ~BFieldComponentAbs() = default;
39 
45  virtual void initialize() {};
46 
59  virtual ROOT::Math::XYZVector calculate(const ROOT::Math::XYZVector& point) const = 0;
60 
66  virtual void terminate() {};
67 
68 
69  protected:
70 
71  private:
72 
73  };
74 
76 } //end of namespace Belle2
The BFieldComponentAbs class.
BFieldComponentAbs()=default
The BFieldComponentAbs constructor.
virtual ~BFieldComponentAbs()=default
The BFieldComponentAbs destructor.
virtual void initialize()
Initializes the magnetic field component.
virtual ROOT::Math::XYZVector calculate(const ROOT::Math::XYZVector &point) const =0
Calculates the magnetic field vector at the specified space point.
virtual void terminate()
Terminates the magnetic field component.
Abstract base class for different kinds of events.