VGM Version 5.3
Loading...
Searching...
No Matches
DisplacedSolid.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_DISPLACED_SOLID_H
21#define ROOT_GM_DISPLACED_SOLID_H
22
24
26
27class TGeoCompositeShape;
28class TGeoMatrix;
29class TGeoBBox;
30class TGeoHalfSpace;
31
32namespace RootGM {
33
35{
36 public:
38 const std::string& name, VGM::ISolid* solid, TGeoMatrix* displacement);
39
40 DisplacedSolid(TGeoBBox* box);
41 DisplacedSolid(TGeoHalfSpace* halfSpace);
42 virtual ~DisplacedSolid();
43
44 // methods
45 virtual std::string Name() const;
46
47 virtual VGM::ISolid* ConstituentSolid() const;
48 virtual VGM::Transform Displacement() const;
49 virtual bool ToBeReflected() const;
50
51 protected:
54
55 private:
56 static const std::string fgkNameExtension;
57
58 TGeoCompositeShape* fCompositeShape;
59 VGM::ISolid* fConstituentSolid;
60};
61
62} // namespace RootGM
63
64inline bool RootGM::DisplacedSolid::ToBeReflected() const { return false; }
65
66#endif // ROOT_GM_BOOLEAN_SOLID_H
The ABC for displaced solids.
VGM implementation for Root displaced solid.
virtual std::string Name() const
Return the name of this solid.
virtual VGM::ISolid * ConstituentSolid() const
Return the constituent solid.
virtual VGM::Transform Displacement() const
Return the 3D displacement of the constituent solid.
virtual bool ToBeReflected() const
The VGM interface to solids.
Definition ISolid.h:58
VGM implementation for Root.
Definition axis.h:28
std::vector< double > Transform
Definition Transform.h:40