11#include "IException.h"
13#include "SpecialPixel.h"
14#include "Statistics.h"
80 double startSample = 1.0,
double startLine = 1.0,
81 double endSample =
Null,
double endLine =
Null,
int bins = 0,
82 bool addCubeData =
false);
93 virtual void AddData(
const double *data,
const unsigned int count);
94 virtual void AddData(
const double data);
95 virtual void RemoveData(
const double *data,
const unsigned int count);
99 double Percent(
const double percent)
const;
103 virtual void BinRange(
const int index,
double &low,
double &high)
const;
109 double BinRangeStart()
const {
110 return p_binRangeStart;
112 double BinRangeEnd()
const {
113 return p_binRangeEnd;
124 double p_binRangeStart, p_binRangeEnd;
IO Handler for Isis Cubes.
Container of a cube histogram.
void SetBins(const int bins)
Change the number of bins in the histogram and reset counters.
double BinSize() const
Returns the size of an individual bin.
BigInt BinCount(const int index) const
Returns the count at a bin position in the histogram.
std::vector< BigInt > p_bins
The array of counts.
void addMeasureDataFromNet(ControlNet &net, double(ControlMeasure::*statFunc)() const)
Iterates through all the measures in a network adding them to the histogram.
double BinMiddle(const int index) const
Returns the value represented by a bin.
void SetValidRange(const double minimum=Isis::ValidMinimum, const double maximum=Isis::ValidMaximum)
Changes the range of the bins.
double Median() const
Returns the median.
int Bins() const
Returns the number of bins in the histogram.
virtual void RemoveData(const double *data, const unsigned int count)
Remove an array of doubles from the histogram counters.
double Percent(const double percent) const
Computes and returns the value at X percent of the histogram.
double Mode() const
Returns the mode.
BigInt MaxBinCount() const
Returns the highest bin count.
~Histogram()
Destructs a histogram object.
virtual void AddData(const double *data, const unsigned int count)
Add an array of doubles to the histogram counters.
void Reset()
Resets histogram counters to zero.
double Skew() const
Computes and returns the skew.
void rangesFromNet(ControlNet &net, double(ControlMeasure::*statFunc)() const)
Iterates through all the measures in a network in order to find the domain of the data.
virtual void BinRange(const int index, double &low, double &high) const
Returns the left edge and right edge values of a bin.
Program progress reporter.
This class is used to accumulate statistics on double arrays.
This is free and unencumbered software released into the public domain.
const double ValidMaximum
The maximum valid double value for Isis pixels.
const double Null
Value for an Isis Null pixel.
long long int BigInt
Big int.
const double ValidMinimum
The minimum valid double value for Isis pixels.