VGM Version 5.3
Loading...
Searching...
No Matches
Medium.h
Go to the documentation of this file.
1// $Id$
2
3// -----------------------------------------------------------------------
4// The RootGM package of the Virtual Geometry Model
5// Copyright (C) 2007, Ivana Hrivnacova
6// All rights reserved.
7//
8// For the licensing terms see vgm/LICENSE.
9// Contact: ivana@ipno.in2p3.fr
10// -----------------------------------------------------------------------
11
13//
19
20#ifndef ROOT_GM_MEDIUM_H
21#define ROOT_GM_MEDIUM_H
22
24
25#include <string>
26
27class TGeoMedium;
28
29namespace RootGM {
30
32{
33 public:
34 Medium(const std::string& name, int mediumId, VGM::IMaterial* material,
35 int nofParameters, double* parameters);
36 Medium(TGeoMedium* medium);
37 virtual ~Medium();
38
39 // methods
40 virtual std::string Name() const;
41
42 virtual int Id() const;
43 virtual double Parameter(int i) const;
44
45 protected:
46 Medium();
47 Medium(const Medium& rhs);
48
49 private:
50 void CheckIndex(int iel) const;
51
52 // data members
53 static const int fgkParamSize;
54
55 TGeoMedium* fMedium;
56};
57
58} // namespace RootGM
59
60#endif // ROOT_GM_MEDIUM_H
The ABC for tracking medium.
Definition VMedium.h:35
VGM implementation for Root medium.
Definition Medium.h:32
virtual std::string Name() const
Return its name.
Definition Medium.cxx:107
virtual int Id() const
Return its unique identifier.
Definition Medium.cxx:113
virtual double Parameter(int i) const
Return the i-th parameter.
Definition Medium.cxx:120
virtual ~Medium()
Definition Medium.cxx:83
The VGM interface to materials.
Definition IMaterial.h:44
VGM implementation for Root.
Definition axis.h:28