libspatialindex API Reference  (git-trunk)
Tools::Interval Class Reference

#include <Tools.h>

Inheritance diagram for Tools::Interval:
Inheritance graph
Collaboration diagram for Tools::Interval:
Collaboration graph

Public Member Functions

 Interval ()
 
 Interval (IntervalType, double, double)
 
 Interval (double, double)
 
 Interval (const Interval &)
 
 ~Interval () override=default
 
virtual IIntervaloperator= (const IInterval &)
 
virtual bool operator== (const Interval &) const
 
virtual bool operator!= (const Interval &) const
 
double getLowerBound () const override
 
double getUpperBound () const override
 
void setBounds (double, double) override
 
bool intersectsInterval (const IInterval &) const override
 
bool intersectsInterval (IntervalType type, const double start, const double end) const override
 
bool containsInterval (const IInterval &) const override
 
IntervalType getIntervalType () const override
 
- Public Member Functions inherited from Tools::IInterval
virtual ~IInterval ()=default
 

Public Attributes

IntervalType m_type {IT_RIGHTOPEN}
 
double m_low {0.0}
 
double m_high {0.0}
 

Detailed Description

Definition at line 327 of file Tools.h.

Constructor & Destructor Documentation

◆ Interval() [1/4]

Tools::Interval::Interval ( )
default

Referenced by Tools::PropertySet::removeProperty().

Here is the caller graph for this function:

◆ Interval() [2/4]

Tools::Interval::Interval ( IntervalType  t,
double  l,
double  h 
)

Definition at line 375 of file Tools.cc.

◆ Interval() [3/4]

Tools::Interval::Interval ( double  l,
double  h 
)

Definition at line 380 of file Tools.cc.

◆ Interval() [4/4]

Tools::Interval::Interval ( const Interval iv)

Definition at line 385 of file Tools.cc.

References m_high, m_low, and m_type.

◆ ~Interval()

Tools::Interval::~Interval ( )
overridedefault

Member Function Documentation

◆ containsInterval()

bool Tools::Interval::containsInterval ( const IInterval i) const
overridevirtual

◆ getIntervalType()

Tools::IntervalType Tools::Interval::getIntervalType ( ) const
overridevirtual

Implements Tools::IInterval.

Definition at line 536 of file Tools.cc.

References m_type.

◆ getLowerBound()

double Tools::Interval::getLowerBound ( ) const
overridevirtual

Implements Tools::IInterval.

Definition at line 422 of file Tools.cc.

References m_low.

Referenced by SpatialIndex::MovingRegion::getIntersectingAreaInTime().

Here is the caller graph for this function:

◆ getUpperBound()

double Tools::Interval::getUpperBound ( ) const
overridevirtual

Implements Tools::IInterval.

Definition at line 427 of file Tools.cc.

References m_high.

Referenced by SpatialIndex::MovingRegion::getIntersectingAreaInTime().

Here is the caller graph for this function:

◆ intersectsInterval() [1/2]

bool Tools::Interval::intersectsInterval ( const IInterval i) const
overridevirtual

Implements Tools::IInterval.

Definition at line 440 of file Tools.cc.

References Tools::IInterval::getIntervalType(), Tools::IInterval::getLowerBound(), and Tools::IInterval::getUpperBound().

Here is the call graph for this function:

◆ intersectsInterval() [2/2]

bool Tools::Interval::intersectsInterval ( IntervalType  type,
const double  start,
const double  end 
) const
overridevirtual

◆ operator!=()

bool Tools::Interval::operator!= ( const Interval iv) const
virtual

Definition at line 417 of file Tools.cc.

◆ operator=()

Tools::IInterval & Tools::Interval::operator= ( const IInterval iv)
virtual

Definition at line 392 of file Tools.cc.

References Tools::IInterval::getIntervalType(), Tools::IInterval::getLowerBound(), Tools::IInterval::getUpperBound(), m_high, m_low, and m_type.

Here is the call graph for this function:

◆ operator==()

bool Tools::Interval::operator== ( const Interval iv) const
virtual

Definition at line 404 of file Tools.cc.

References m_high, m_low, and m_type.

◆ setBounds()

void Tools::Interval::setBounds ( double  l,
double  h 
)
overridevirtual

Implements Tools::IInterval.

Definition at line 432 of file Tools.cc.

References m_high, and m_low.

Member Data Documentation

◆ m_high

double Tools::Interval::m_high {0.0}

◆ m_low

double Tools::Interval::m_low {0.0}

◆ m_type


The documentation for this class was generated from the following files: