VGM
Version 5.5
Toggle main menu visibility
Loading...
Searching...
No Matches
packages
VGM
include
VGM
solids
IArb8.h
Go to the documentation of this file.
1
// $Id$
2
3
// -----------------------------------------------------------------------
4
// The VGM 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
19
20
#ifndef VGM_I_ARB8_H
21
#define VGM_I_ARB8_H
22
23
#include "
VGM/common/TwoVector.h
"
24
#include "
VGM/solids/ISolid.h
"
25
26
#include <iostream>
27
28
namespace
VGM
{
29
30
class
IArb8
:
public
virtual
ISolid
31
{
32
public
:
33
virtual
~IArb8
() {}
34
35
// methods
36
37
virtual
SolidType
Type
()
const
= 0;
38
virtual
std::string
Name
()
const
= 0;
39
42
virtual
int
NofVertices
()
const
= 0;
45
virtual
TwoVector
Vertex
(
int
index)
const
= 0;
48
virtual
double
TwistAngle
(
int
index)
const
= 0;
51
virtual
double
ZHalfLength
()
const
= 0;
52
53
// streaming
54
virtual
std::ostream&
Put
(std::ostream& out)
const
= 0;
55
};
56
57
}
// namespace VGM
58
59
std::ostream&
operator<<
(std::ostream& out,
const
VGM::IArb8
& xtru);
60
61
#endif
// VGM_I_ARB8_H
operator<<
std::ostream & operator<<(std::ostream &out, const VGM::IArb8 &xtru)
Definition
VArb8.cxx:22
ISolid.h
TwoVector.h
VGM::IArb8
The VGM interface to Arb8 solids.
Definition
IArb8.h:31
VGM::IArb8::ZHalfLength
virtual double ZHalfLength() const =0
Return the half-length along the z axis in mm.
VGM::IArb8::Put
virtual std::ostream & Put(std::ostream &out) const =0
Put the printing of the solid parameters in the out stream.
VGM::IArb8::NofVertices
virtual int NofVertices() const =0
Return the number of vertices.
VGM::IArb8::~IArb8
virtual ~IArb8()
Definition
IArb8.h:33
VGM::IArb8::Type
virtual SolidType Type() const =0
Return the type of this solid.
VGM::IArb8::Vertex
virtual TwoVector Vertex(int index) const =0
Return the index-th vertex.
VGM::IArb8::TwistAngle
virtual double TwistAngle(int index) const =0
Return the index-th twist angle.
VGM::IArb8::Name
virtual std::string Name() const =0
Return the name of this solid.
VGM::ISolid
The VGM interface to solids.
Definition
ISolid.h:58
VGM
VGM interfaces.
Definition
VMedium.h:28
VGM::TwoVector
std::pair< double, double > TwoVector
Definition
TwoVector.h:28
VGM::SolidType
SolidType
Definition
ISolid.h:29
Generated on
for VGM by
1.17.0