scidavis  2.3.0
About: SciDAVis is a free application for Scientific Data Analysis and Visualization (a fork off of QtiPlot).
  Fossies Dox: scidavis-2.3.0.tar.gz  ("unofficial" and yet experimental doxygen-generated source code documentation)  

Interval< T > Class Template Reference

Auxiliary class for interval based data. More...

#include <Interval.h>

Public Member Functions

 Interval ()
 
 Interval (T start, T end)
 
 Interval (const Interval< T > &other)
 
size () const
 
bool isValid () const
 
bool touches (const Interval< T > &other) const
 

Detailed Description

template<class T>
class Interval< T >

Auxiliary class for interval based data.

File : Interval.h

Project : SciDAVis

Copyright : (C) 2007 by Tilman Benkert, Knut Franke Email (use @ for *) : thzs*gmx.net, knut.franke*gmx.de Description : Auxiliary class for interval based data

  • This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. *
    • This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. *
    • You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301 USA *
    • This class represents an interval of the type [start,end]. It should be pretty self explanatory.

For the template argument (T), only numerical types ((unsigned) short, (unsigned) int, (unsigned) long, float, double, long double) are supported.

Definition at line 210 of file Interval.h.

Constructor & Destructor Documentation

◆ Interval() [1/3]

template<class T >
Interval< T >::Interval ( )
inline

Definition at line 213 of file Interval.h.

213 {}

◆ Interval() [2/3]

template<class T >
Interval< T >::Interval ( start,
end 
)
inline

Definition at line 214 of file Interval.h.

214 : IntervalBase<T>(start, end) {}

◆ Interval() [3/3]

template<class T >
Interval< T >::Interval ( const Interval< T > &  other)
inline

Definition at line 215 of file Interval.h.

215 : IntervalBase<T>(other) {}

Member Function Documentation

◆ isValid()

template<class T >
bool Interval< T >::isValid ( ) const
inline

Definition at line 219 of file Interval.h.

219  {
220  return ( IntervalBase<T>::d_start >= 0 && IntervalBase<T>::d_end >= 0 &&
222  }

Referenced by IntervalBase< long double >::restrictList(), Column::Private::setDateTimeAt(), and IntervalBase< long double >::split().

Here is the caller graph for this function:

◆ size()

template<class T >
T Interval< T >::size ( ) const
inline

Definition at line 216 of file Interval.h.

216  {
218  }

Referenced by future::Table::clearSelectedCells(), AbstractSimpleFilter::inputRowsAboutToBeInserted(), AbstractSimpleFilter::inputRowsAboutToBeRemoved(), AbstractSimpleFilter::inputRowsInserted(), AbstractSimpleFilter::inputRowsRemoved(), and future::Table::removeSelectedRows().

Here is the caller graph for this function:

◆ touches()

template<class T >
bool Interval< T >::touches ( const Interval< T > &  other) const
inline

Definition at line 223 of file Interval.h.

223  {
224  return ( (other.end() == IntervalBase<T>::d_start-1) ||
225  (other.start() == IntervalBase<T>::d_end+1) );
226  }

Referenced by IntervalBase< long double >::merge().

Here is the caller graph for this function:

The documentation for this class was generated from the following file:
IntervalBase
Definition: Interval.h:42