CbmRoot
Loading...
Searching...
No Matches
CbmLitTGeoNavigator.h
Go to the documentation of this file.
1/* Copyright (C) 2008-2012 GSI/JINR-LIT, Darmstadt/Dubna
2 SPDX-License-Identifier: GPL-3.0-only
3 Authors: Andrey Lebedev [committer] */
4
12#ifndef CBMLITTGEONAVIGATOR_H_
13#define CBMLITTGEONAVIGATOR_H_
14
15#include "TObject.h"
18
19#include <vector>
20
22
24 public:
25 /* Constructor */
27
28 /* Destructor */
29 virtual ~CbmLitTGeoNavigator();
30
31 /* Inherited from CbmLitGeoNavigator */
32 LitStatus FindIntersections(const CbmLitTrackParam* par, litfloat zOut, std::vector<CbmLitMaterialInfo>& inter);
33
34 private:
35 /* Sets the current position and direction for the TGeoManager
36 * @param par Track parameter from which the current position and direction will be initialized.
37 */
38 void InitTrack(const CbmLitTrackParam* par, Bool_t downstream) const;
39
40 /* Make a step: if step=0 than to the next crossing boundary, else
41 * make a step of length step.
42 * @param step Step size [cm].
43 * @return Crossed material information
44 */
45 CbmLitMaterialInfo MakeStep(litfloat step = 0.) const;
46
47 /* Calculates length between current position and the point on the plane at zOut.
48 * @param zOut Output Z position [cm]
49 * @return Length.
50 */
51 litfloat CalcLength(litfloat zOut) const;
52};
53
54#endif /*CBMLITTGEONAVIGATOR_H_*/
LitStatus
Definition CbmLitEnums.h:29
double litfloat
Definition CbmLitFloat.h:19
Interface for geometry navigation algorithm.
Interface for geometry navigation algorithm.
LitStatus FindIntersections(const CbmLitTrackParam *par, litfloat zOut, std::vector< CbmLitMaterialInfo > &inter)
litfloat CalcLength(litfloat zOut) const
CbmLitMaterialInfo MakeStep(litfloat step=0.) const
void InitTrack(const CbmLitTrackParam *par, Bool_t downstream) const
Data class for track parameters.