9#include "MantidKernel/DllConfig.h"
10#include "MantidTypes/Core/DateAndTime.h"
30 TimeInterval(
const Types::Core::DateAndTime &from,
const Types::Core::DateAndTime &to);
31 TimeInterval(
const std::string &from,
const std::string &to);
34 const Types::Core::DateAndTime &
start()
const {
return m_start; }
36 const Types::Core::DateAndTime &
stop()
const {
return m_stop; }
38 bool isValid()
const {
return m_stop > m_start; }
41 Types::Core::time_duration length()
const;
43 double duration()
const;
46 bool contains(
const Types::Core::DateAndTime &t)
const {
return t >= start() && t < stop(); }
59 std::string begin_str()
const;
61 std::string end_str()
const;
Represents a time interval.
TimeInterval()
Default constructor.
const Types::Core::DateAndTime & start() const
Beginning of the interval.
bool isValid() const
True if the interval is not empty.
Types::Core::DateAndTime m_stop
end
const Types::Core::DateAndTime & stop() const
End of the interval.
Types::Core::DateAndTime m_start
begin
bool contains(const Types::Core::DateAndTime &t) const
True if the interval contains t.
bool MANTID_GEOMETRY_DLL intersection(const ConvexPolygon &P, const ConvexPolygon &Q, ConvexPolygon &out)
Compute the instersection of two convex polygons.
Helper class which provides the Collimation Length for SANS instruments.
constexpr bool operator==(const wide_integer< Bits, Signed > &lhs, const wide_integer< Bits2, Signed2 > &rhs)
constexpr bool operator>(const wide_integer< Bits, Signed > &lhs, const wide_integer< Bits2, Signed2 > &rhs)
constexpr bool operator<(const wide_integer< Bits, Signed > &lhs, const wide_integer< Bits2, Signed2 > &rhs)
constexpr wide_integer< Bits, Signed > operator<<(const wide_integer< Bits, Signed > &lhs, T2 n) noexcept