The Gaudi Framework
v41r0 (bdbe7744)
Toggle main menu visibility
Loading...
Searching...
No Matches
IMagneticFieldSvc.h
Go to the documentation of this file.
1
/***********************************************************************************\
2
* (c) Copyright 1998-2025 CERN for the benefit of the LHCb and ATLAS collaborations *
3
* *
4
* This software is distributed under the terms of the Apache version 2 licence, *
5
* copied verbatim in the file "LICENSE". *
6
* *
7
* In applying this licence, CERN does not waive the privileges and immunities *
8
* granted to it by virtue of its status as an Intergovernmental Organization *
9
* or submit itself to any jurisdiction. *
10
\***********************************************************************************/
11
#pragma once
12
13
#include <
GaudiKernel/IService.h
>
14
#include <
GaudiKernel/StatusCode.h
>
15
16
namespace
ROOT
{
17
namespace
Math
{
18
class
DefaultCoordinateSystemTag;
19
20
// from Math/Point3Dfwd.h
21
template
<
class
CoordSystem,
class
Tag>
22
class
PositionVector3D
;
23
// from Math/Vector3Dfwd.h
24
template
<
class
CoordSystem,
class
Tag>
25
class
DisplacementVector3D
;
26
// from Math/Point3Dfwd.h
27
template
<
typename
T>
28
class
Cartesian3D
;
29
// from Math/Point3Dfwd.h
30
typedef
PositionVector3D<Cartesian3D<double>
, DefaultCoordinateSystemTag>
XYZPoint
;
31
// from Math/Vector3Dfwd.h
32
typedef
DisplacementVector3D<Cartesian3D<double>
, DefaultCoordinateSystemTag>
XYZVector
;
33
}
// namespace Math
34
}
// namespace ROOT
35
42
class
GAUDI_API
IMagneticFieldSvc
:
virtual
public
IService
{
43
44
public
:
46
DeclareInterfaceID
(
IMagneticFieldSvc
, 2, 0 );
47
48
// Get the magnetic field vector at a given point in space.
49
// Input: XYZPoint - Point at which magnetic field vector is to be given.
50
// Output: XYZVector - Magnetic field vector.
51
// Return: StatusCode SUCCESS if calculation was performed.
52
virtual
StatusCode
fieldVector
(
const
ROOT::Math::XYZPoint
& xyz,
ROOT::Math::XYZVector
& fvec )
const
= 0;
53
};
IService.h
GAUDI_API
#define GAUDI_API
Definition
Kernel.h:49
StatusCode.h
IMagneticFieldSvc
The interface to the MagneticFieldSvc.
Definition
IMagneticFieldSvc.h:42
IMagneticFieldSvc::fieldVector
virtual StatusCode fieldVector(const ROOT::Math::XYZPoint &xyz, ROOT::Math::XYZVector &fvec) const =0
IMagneticFieldSvc::DeclareInterfaceID
DeclareInterfaceID(IMagneticFieldSvc, 2, 0)
InterfaceID.
IService
General service interface definition.
Definition
IService.h:26
ROOT::Math::Cartesian3D
Definition
IMagneticFieldSvc.h:28
ROOT::Math::DisplacementVector3D
Definition
IMagneticFieldSvc.h:25
ROOT::Math::PositionVector3D
Definition
IMagneticFieldSvc.h:22
StatusCode
This class is used for returning status codes from appropriate routines.
Definition
StatusCode.h:64
ROOT::Math
Definition
IMagneticFieldSvc.h:17
ROOT::Math::XYZVector
DisplacementVector3D< Cartesian3D< double >, DefaultCoordinateSystemTag > XYZVector
Definition
IMagneticFieldSvc.h:32
ROOT::Math::XYZPoint
PositionVector3D< Cartesian3D< double >, DefaultCoordinateSystemTag > XYZPoint
Definition
IMagneticFieldSvc.h:30
ROOT
Definition
IMagneticFieldSvc.h:16
GaudiKernel
include
GaudiKernel
IMagneticFieldSvc.h
Generated on
for The Gaudi Framework by
1.17.0