19#ifndef BDSLINKOPAQUEBOX_H
20#define BDSLINKOPAQUEBOX_H
21#include "BDSAcceleratorComponent.hh"
22#include "BDSUtilities.hh"
24#include "G4ThreeVector.hh"
25#include "G4Transform3D.hh"
28#include "BDSGeometryComponent.hh"
44 G4double outputSamplerRadiusIn);
55 inline const G4ThreeVector& OffsetToStart()
const {
return offsetToStart;}
56 inline const G4Transform3D& TransformToStart()
const {
return transformToStart;}
70 G4double outputSamplerRadius;
71 G4ThreeVector offsetToStart;
72 G4Transform3D transformToStart;
Abstract class that represents a component of an accelerator.
G4double GetAngle() const
virtual G4String GetName() const
The name of the component without modification.
virtual G4double GetChordLength() const
virtual G4double GetArcLength() const
A generic geometry component for a bdsim model.
Wrapper box for an accelerator component.
BDSLinkOpaqueBox()=delete
Default constructor.
BDSLinkOpaqueBox & operator=(const BDSLinkOpaqueBox &other)=delete
Copy assignment operator.
G4bool Angled() const
Accessor.
G4String LinkName() const
Accessor.
BDSLinkOpaqueBox(const BDSLinkOpaqueBox &other)=delete
Copy constructor.
G4double ChordLength() const
Accessor.
G4int PlaceOutputSampler()
Place the output sampler.
G4double ArcLength() const
Accessor.
Custom shaped sampler with fixed thickness.
A holder for any placement offsets and rotations for a BDSAcceleratorComponent.
G4bool IsFinite(G4double value, G4double tolerance=std::numeric_limits< double >::epsilon())