Belle II Software  release-05-02-19
BFieldFrameworkInterface.h
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2015 - Belle II Collaboration *
4  * *
5  * Author: The Belle II Collaboration *
6  * Contributors: Martin Ritter *
7  * *
8  * This software is provided "as is" without any warranty. *
9  **************************************************************************/
10 
11 #pragma once
12 #ifndef GEOMETRY_BFIELDMAP_BFIELDFRAMEWORKINTERFACE_H
13 #define GEOMETRY_BFIELDMAP_BFIELDFRAMEWORKINTERFACE_H
14 
15 #include <framework/dbobjects/MagneticFieldComponent.h>
16 #include <framework/gearbox/Unit.h>
17 #include <geometry/bfieldmap/BFieldMap.h>
18 
19 namespace Belle2 {
26  public:
30  virtual bool inside(const B2Vector3D&) const final override { return true; }
32  virtual B2Vector3D getField(const B2Vector3D& position) const final override
33  {
34  return BFieldMap::Instance().getBField(position) * Unit::T;
35  }
36  };
38 }
39 #endif // GEOMETRY_BFIELDMAP_FRAMEWORKINTERFACE_H
Belle2::BFieldFrameworkInterface::getField
virtual B2Vector3D getField(const B2Vector3D &position) const final override
and we return the values from the exsiting BFieldMap
Definition: BFieldFrameworkInterface.h:32
Belle2::BFieldFrameworkInterface::inside
virtual bool inside(const B2Vector3D &) const final override
everything is inside this component
Definition: BFieldFrameworkInterface.h:30
Belle2::B2Vector3< double >
Belle2::BFieldMap::Instance
static BFieldMap & Instance()
Static method to get a reference to the BFieldMap instance.
Definition: BFieldMap.cc:17
Belle2::Unit::T
static const double T
[tesla]
Definition: Unit.h:130
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::BFieldMap::getBField
B2Vector3D getBField(const B2Vector3D &point) const
Returns the magnetic field of the Belle II detector at the specified space point.
Definition: BFieldMap.h:117
Belle2::BFieldFrameworkInterface
Simple BFieldComponent to just wrap the existing BFieldMap with the new BFieldManager.
Definition: BFieldFrameworkInterface.h:25
Belle2::MagneticFieldComponent
Abstract base class for BField components.
Definition: MagneticFieldComponent.h:38
Belle2::BFieldFrameworkInterface::BFieldFrameworkInterface
BFieldFrameworkInterface()
this component is exclusive: ignore all others
Definition: BFieldFrameworkInterface.h:28