![]() |
|
|||
File indexing completed on 2025-08-05 08:18:20
0001 /* Copyright 2008-2010, Technische Universitaet Muenchen, 0002 Authors: Christian Hoeppner & Sebastian Neubert & Johannes Rauch 0003 0004 This file is part of GENFIT. 0005 0006 GENFIT is free software: you can redistribute it and/or modify 0007 it under the terms of the GNU Lesser General Public License as published 0008 by the Free Software Foundation, either version 3 of the License, or 0009 (at your option) any later version. 0010 0011 GENFIT is distributed in the hope that it will be useful, 0012 but WITHOUT ANY WARRANTY; without even the implied warranty of 0013 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 0014 GNU Lesser General Public License for more details. 0015 0016 You should have received a copy of the GNU Lesser General Public License 0017 along with GENFIT. If not, see <http://www.gnu.org/licenses/>. 0018 */ 0019 /** @addtogroup genfit 0020 * @{ 0021 */ 0022 0023 #ifndef genfit_AbsBField_h 0024 #define genfit_AbsBField_h 0025 0026 #include <TVector3.h> 0027 0028 0029 namespace genfit { 0030 0031 /** @brief Abstract Interface to magnetic fields in GENFIT 0032 * 0033 * @author Christian Höppner (Technische Universität München, original author) 0034 * @author Sebastian Neubert (Technische Universität München, original author) 0035 */ 0036 class AbsBField { 0037 public: 0038 0039 AbsBField(){;} 0040 virtual ~AbsBField(){;} 0041 0042 /** 0043 * @brief Get the magneticField [kGauss] at position. 0044 * 0045 * Override this in your concrete implementation. 0046 * Provided for compatibility with old genfit. Use the other interface to avoid 0047 * unnecessary TVector3 instantiations. 0048 */ 0049 virtual TVector3 get(const TVector3& position) const = 0; 0050 0051 /** 0052 * @brief Get the magneticField [kGauss] at position. 0053 * 0054 * Override this in your concrete implementation. 0055 */ 0056 virtual void get(const double& posX, const double& posY, const double& posZ, double& Bx, double& By, double& Bz) const { const TVector3& B(this->get(TVector3(posX, posY, posZ))); Bx = B.X(); By = B.Y(); Bz = B.Z(); } 0057 0058 }; 0059 0060 } /* End of namespace genfit */ 0061 /** @} */ 0062 0063 #endif // genfit_AbsBField_h
[ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |
![]() ![]() |