VGM Version 5.3
Loading...
Searching...
No Matches
Trd.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_TRD_H
21#define ROOT_GM_TRD_H
22
23#include "BaseVGM/solids/VTrd.h"
24
25#include <string>
26
27class TGeoTrd1;
28class TGeoTrd2;
29
30namespace RootGM {
31
32class Trd : public BaseVGM::VTrd
33{
34 public:
35 Trd(const std::string& name, double hx1, double hx2, double hy1, double hy2,
36 double hz);
37 Trd(TGeoTrd2* trd);
38 Trd(TGeoTrd1* trd);
39 virtual ~Trd();
40
41 // methods
42 virtual std::string Name() const;
43 virtual double XHalfLengthMinusZ() const;
44 virtual double XHalfLengthPlusZ() const;
45 virtual double YHalfLengthMinusZ() const;
46 virtual double YHalfLengthPlusZ() const;
47 virtual double ZHalfLength() const;
48
49 protected:
50 Trd();
51 Trd(const Trd& rhs);
52
53 private:
54 TGeoTrd2* fTrd;
55 bool fIsOwner;
56};
57
58} // namespace RootGM
59
60#endif // ROOT_GM_TRD_H
The ABC for trd solids.
Definition VTrd.h:30
VGM implementation for Root trd solid.
Definition Trd.h:33
virtual double YHalfLengthMinusZ() const
Return the half-length along y at the surface positioned at -hz in mm.
Definition Trd.cxx:111
virtual std::string Name() const
Return the name of this solid.
Definition Trd.cxx:96
virtual double XHalfLengthPlusZ() const
Return the half-length along x at the surface positioned at +hz in mm.
Definition Trd.cxx:105
virtual double ZHalfLength() const
Return the half-length along the z axis in mm.
Definition Trd.cxx:123
virtual double XHalfLengthMinusZ() const
Return the half-length along x at the surface positioned at -hz in mm.
Definition Trd.cxx:99
virtual double YHalfLengthPlusZ() const
Return thehalf-length along y at the surface positioned at +hz in mm.
Definition Trd.cxx:117
virtual ~Trd()
Definition Trd.cxx:89
VGM implementation for Root.
Definition axis.h:28