LArSoft  v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
GFAbsGeoMatManager.h
Go to the documentation of this file.
1 /* Copyright 2008-2009, Technische Universitaet Muenchen,
2  Authors: Christian Hoeppner & Sebastian Neubert
3 
4  This file is part of GENFIT.
5 
6  GENFIT is free software: you can redistribute it and/or modify
7  it under the terms of the GNU Lesser General Public License as published
8  by the Free Software Foundation, either version 3 of the License, or
9  (at your option) any later version.
10 
11  GENFIT is distributed in the hope that it will be useful,
12  but WITHOUT ANY WARRANTY; without even the implied warranty of
13  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14  GNU Lesser General Public License for more details.
15 
16  You should have received a copy of the GNU Lesser General Public License
17  along with GENFIT. If not, see <http://www.gnu.org/licenses/>.
18 */
19 
24 #ifndef GFABSGEOMATMANAGER_H
25 #define GFABSGEOMATMANAGER_H
26 
27 #include "TObject.h"
28 
41 namespace genf {
42 
43  class GFAbsGeoMatManager : public TObject {
44  public:
45  virtual ~GFAbsGeoMatManager() {}
47 
49  virtual void getMaterialParameters(double& matDensity,
50  double& matZ,
51  double& matA,
52  double& radiationLength,
53  double& mEE) = 0;
54 
56 
58  virtual void initTrack(const double& posx,
59  const double& posy,
60  const double& posz,
61  const double& dirx,
62  const double& diry,
63  const double& dirz) = 0;
64 
66 
71  virtual double stepOrNextBoundary(const double& maxDist) = 0;
72 
73  // public:
74  //ClassDef(GFAbsGeoMatManager,1)
75  };
76 
77 } // namespace genf
78 #endif
79 
Generic Interface to magnetic fields in GENFIT.
Definition: GFAbsBField.h:34
virtual void initTrack(const double &posx, const double &posy, const double &posz, const double &dirx, const double &diry, const double &dirz)=0
Initializes the track.
virtual double stepOrNextBoundary(const double &maxDist)=0
Makes a step, limited to next material boundary.
virtual void getMaterialParameters(double &matDensity, double &matZ, double &matA, double &radiationLength, double &mEE)=0
Gets material parameters (density, Z, A, radiation length, mean excitation energy) ...