12#include "MantidGeometry/DllConfig.h"
17class PseudoRandomNumberGenerator;
31 inline const std::string
name()
const {
return m_name; }
33 inline const std::string
containerID()
const {
return getContainer().id(); }
36 if (m_components.empty())
37 throw std::runtime_error(
"Cannot get container from empty environment");
42 inline size_t nelements()
const {
return m_components.size(); }
55 int interceptSurfaces(
Track &track)
const;
std::map< DeltaEMode::Type, std::string > index
A simple structure that defines an axis-aligned cuboid shaped bounding box for a geometrical object.
Models a Container is used to hold a sample in the beam.
IObject : Interface for geometry objects.
Defines a single instance of a SampleEnvironment.
std::vector< IObject_const_sptr > m_components
const Container & getContainer() const
const std::string name() const
const std::string containerID() const
Defines a track as a start point and a direction.
std::shared_ptr< const Container > Container_const_sptr
Typdef for a shared pointer to a const object.
std::unique_ptr< const SampleEnvironment > SampleEnvironment_const_uptr
std::unique_ptr< SampleEnvironment > SampleEnvironment_uptr
std::shared_ptr< const IObject > IObject_const_sptr
Typdef for a shared pointer to a const object.
Helper class which provides the Collimation Length for SANS instruments.