|
| | DataClipper () |
| |
| | DataClipper (const DataClipper &) |
| |
| | ~DataClipper () |
| |
| bool | calculateRange (float cliprate, Interval< float > &) |
| |
| bool | calculateRange (float lowcliprate, float highcliprate, Interval< float > &) |
| |
| bool | fullSort () |
| |
| bool | getRange (float cliprate, Interval< float > &) const |
| |
| bool | getRange (float lowcliprate, float highcliprate, Interval< float > &) const |
| |
| bool | getSymmetricRange (float cliprate, float midval, Interval< float > &) const |
| |
| bool | isEmpty () const |
| |
| DataClipper & | operator= (const DataClipper &) |
| |
| void | putData (const ArrayND< float > &) |
| |
| void | putData (const float *, od_int64 sz) |
| |
| void | putData (const ValueSeries< float > &, od_int64 sz) |
| |
| void | putData (float) |
| |
| void | reset () |
| |
| void | setApproxNrValues (od_int64 nrsamples, int statsize=2000) |
| |
| const LargeValVec< float > & | statPts () const |
| |
A DataClipper gets a bunch of data and determines at what value to clip if a certain clip percentage is desired.
For simple cases, where no subselection is needed (i.e. the stats will be performed on all values, and only one dataset is used) the static function calculateRange is good enough:
range );
bool calculateRange(float cliprate, Interval< float > &)
Interval of values.
Definition ranges.h:112
virtual T * arr()
3rd party access
Definition typeset.h:91
size_type size() const
Definition typeset.h:324
Sets of (small) copyable elements.
Definition typeset.h:188
If there are more than one dataset, or if a subselection is wanted, the class is used as follows:
- Create object
- If subselection is wanted, set total nr of samples and statsize with setApproxNrValues
- Add all your sources putData
- If you only want a fixed range, call calculateRange.
- If you want to come back an get multiple ranges, call fullSort. After fullSort, the getRange functions can be called, any number of times.
- To prepare the object for a new set of data, call reset.
Example
float otherdata;
Array3D ( Subclass of ArrayND ) is a three dimensional array.
Definition arraynd.h:170
const Array3DInfo & info() const override=0
virtual od_uint64 getTotalSz() const
A DataClipper gets a bunch of data and determines at what value to clip if a certain clip percentage ...
Definition dataclipper.h:72
bool getRange(float cliprate, Interval< float > &) const
void setApproxNrValues(od_int64 nrsamples, int statsize=2000)
<>