IHistogram Class Referenceabstract

Class for representing a histogram. More...

#include "IHistogram.hpp"

+ Inheritance diagram for IHistogram:

Classes

struct  IEntry
 Histogram entry. More...
 

Public Types

typedef ConstIterator< IEntry< int64_t > > const_iterator_integral
 integral histogram iterator
 
typedef ConstIterator< IEntry< double > > const_iterator_real
 real histogram iterator
 
typedef ConstIterator< IEntry< bool > > const_iterator_bool
 boolean histogram iterator
 
typedef ConstIterator< IEntry< const char * > > const_iterator_string
 string histogram iterator
 

Public Member Functions

virtual ColumnType type () const =0
 internal type of the histogram
 
virtual bool isIntegral () const =0
 is an integral data type
 
virtual bool isReal () const =0
 is a real (double or float) data type
 
virtual bool isBool () const =0
 is a boolean type
 
virtual bool isString () const =0
 is a string data type
 
virtual int64_t size () const =0
 number of histogram value (number of distinct data values)
 
virtual int64_t sizeData () const =0
 number of data values that were used to build the histogram
 
virtual int64_t sizeNull () const =0
 number of null values occurred in the corresponding data set
 
virtual bool complete () const =0
 flag if histogram covers the full data set
 
virtual const_iterator_integral beginIntegral () const =0
 only allowed if isIntegral() == true
 
virtual const_iterator_integral endIntegral () const =0
 
virtual const_iterator_real beginReal () const =0
 
virtual const_iterator_real endReal () const =0
 
virtual const_iterator_bool beginBool () const =0
 
virtual const_iterator_bool endBool () const =0
 
virtual const_iterator_string beginString () const =0
 
virtual const_iterator_string endString () const =0
 
- Public Member Functions inherited from ObjectBase
virtual void Delete ()
 

Detailed Description

Class for representing a histogram.

Although all DM column types are internally supported, the interface provides access to a reduced list types only (to keep the interface as simple as possible). The corresponding conversion are implicitly performed when accessing the values.