OpendTect
6.6
|
Sharable data distribution. Sampling defaults to 0 step 1. More...
Public Member Functions | |
DataDistribution () | |
DataDistribution (const TypeSet< VT > &) | |
DataDistribution (const TypeSet< VT > &, SamplingData< VT >) | |
DataDistribution (int) | |
DataDistribution (SamplingData< VT >, int n=256) | |
void | add (const VT *) |
fast, no checks More... | |
VT | binPos (int) const |
Interval< VT > | dataRange () const |
VT | get (int, bool cumulative=false) const |
VT * | getArr (bool cum) const |
for fast non-shared usage More... | |
void | getAvgStd (VT &avg, VT &std) const |
int | getBinNr (VT) const |
TypeSet< VT > | getSet (bool cum) const |
bool | isEmpty () const |
bool | isNormalised () const |
VT | maxValue () const |
mDeclMonitorableAssignment (DataDistribution< VT >) | |
VT | medianPosition () const |
mImplSimpleMonitoredGetSet (inline, sampling, setSampling, SamplingData< VT >, sampling_, cSamplingChange()) | |
VT | operator[] (int) const |
VT | positionForCumulative (VT) const |
void | set (const VT *) |
fast, no checks More... | |
void | set (int, VT) |
slow, O(N) More... | |
void | setEmpty () |
void | setSize (int) |
int | size () const |
VT | sumOfValues () const |
VT | valueAt (VT, bool cumulative) const |
Public Member Functions inherited from SharedObject | |
SharedObject (const char *nm=0) | |
SharedObject (const SharedObject &) | |
SharedObject * | clone () const override |
ChangeType | compareWith (const MonitoredObject &) const override |
bool | operator!= (const SharedObject &oth) const |
SharedObject & | operator= (const SharedObject &) |
bool | operator== (const SharedObject &) const |
Public Member Functions inherited from RefCount::Referenced | |
void | addObserver (WeakPtrBase *obs) |
Not for normal use. May become private. More... | |
int | nrRefs () const |
Only for expert use. More... | |
void | ref () const |
bool | refIfReffed () const |
Don't use in production, for debugging. More... | |
void | removeObserver (WeakPtrBase *obs) |
Not for normal use. May become private. More... | |
bool | tryRef () const |
Not for normal use. May become private. More... | |
void | unRef () const |
void | unRefNoDelete () const |
Public Member Functions inherited from NamedMonitoredObject | |
NamedMonitoredObject (const char *nm=0) | |
NamedMonitoredObject (const NamedMonitoredObject &) | |
NamedMonitoredObject (const NamedObject &) | |
virtual | ~NamedMonitoredObject () |
NamedMonitoredObject * | getClone () const override |
BufferString | getName () const override |
bool | operator!= (const NamedMonitoredObject &oth) const |
NamedMonitoredObject & | operator= (const NamedMonitoredObject &) |
bool | operator== (const NamedMonitoredObject &) const |
void | setName (const char *) override |
Public Member Functions inherited from MonitoredObject | |
MonitoredObject (const MonitoredObject &) | |
virtual | ~MonitoredObject () |
virtual DirtyCountType | dirtyCount () const |
virtual ChangeDataNotifier & | objectChanged () const |
virtual Notifier< MonitoredObject > & | objectToBeDeleted () const |
MonitoredObject & | operator= (const MonitoredObject &) |
bool | operator== (const MonitoredObject &) const |
void | sendChangeNotification (const ChangeData &) const |
void | sendEntireObjectChangeNotification () const |
virtual void | touch () const |
void | transferNotifsTo (const MonitoredObject &, const CallBacker *onlyfor=0) const |
Public Member Functions inherited from CallBacker | |
CallBacker () | |
CallBacker (const CallBacker &) | |
virtual | ~CallBacker () |
bool | attachCB (const NotifierAccess &, const CallBack &, bool onlyifnew=false) const |
bool | attachCB (const NotifierAccess *notif, const CallBack &cb, bool onlyifnew=false) const |
void | detachAllNotifiers () const |
Call from the destructor of your inherited object. More... | |
void | detachCB (const NotifierAccess &, const CallBack &) const |
void | detachCB (const NotifierAccess *notif, const CallBack &cb) const |
virtual bool | isCapsule () const |
bool | isNotifierAttached (const NotifierAccess *) const |
Only for debugging purposes, don't use. More... | |
void | stopReceivingNotifications () const |
Public Member Functions inherited from NamedObject | |
NamedObject (const char *nm=nullptr) | |
NamedObject (const NamedObject &oth) | |
virtual | ~NamedObject () |
bool | getNameFromPar (const IOPar &) |
virtual const name_type & | name () const |
NamedObject & | operator= (const NamedObject &) |
bool | operator== (const NamedObject &oth) const |
Public Member Functions inherited from ObjectWithName | |
virtual | ~ObjectWithName () |
bool | hasName (const char *nm) const |
bool | hasName (const name_type &nm) const |
void | putNameInPar (IOPar &) const |
Static Public Member Functions | |
static ChangeType | cDataChange () |
static ChangeType | cSamplingChange () |
static int | getBinNrFor (VT, const SamplingData< VT > &, int nrbins) |
static const DataDistribution< VT > & | getEmptyDistrib () |
Static Public Member Functions inherited from SharedObject | |
static Notifier< SharedObject > & | instanceCreated () |
Static Public Member Functions inherited from RefCount::Referenced | |
static bool | isSane (const Referenced *) |
Static Public Member Functions inherited from NamedMonitoredObject | |
static ChangeType | cNameChange () |
static Notifier< NamedMonitoredObject > & | instanceCreated () |
Static Public Member Functions inherited from MonitoredObject | |
static ChangeType | cEntireObjectChange () |
static IDType | cEntireObjectChgID () |
static ChangeType | changeNotificationTypeOf (CallBacker *) |
static ChangeType | cNoChange () |
static IDType | cUnspecChgID () |
static Notifier< MonitoredObject > & | instanceCreated () |
defines static instanceCreated() More... | |
Static Public Member Functions inherited from CallBacker | |
static void | createReceiverForCurrentThread () |
static void | removeReceiverForCurrentThread () |
Protected Member Functions | |
~DataDistribution () | |
VT | gtMax (int *idxat=0) const |
void | setCumData (int) |
Protected Member Functions inherited from SharedObject | |
virtual | ~SharedObject () |
void | copyAll (const SharedObject &) |
Protected Member Functions inherited from RefCount::Referenced | |
Referenced () | |
Referenced (const Referenced &) | |
virtual | ~Referenced () |
Referenced & | operator= (const Referenced &) |
Protected Member Functions inherited from NamedMonitoredObject | |
void | copyAll (const NamedMonitoredObject &) |
Protected Member Functions inherited from MonitoredObject | |
MonitoredObject () | |
void | copyAll (const MonitoredObject &) |
template<class T > | |
T | getMemberSimple (const T &) const |
the get function used by mImplSimpleMonitoredGet More... | |
void | resumeChangeNotifications () const |
void | sendChgNotif (AccessLocker &, ChangeType, IDType) const |
calls objectChanged with released lock More... | |
void | sendChgNotif (AccessLocker &, const ChangeData &) const |
calls objectChanged with released lock More... | |
void | sendDelNotif () const |
template<class TMember , class TSetTo > | |
void | setMemberSimple (TMember &, TSetTo, ChangeType, IDType) |
the set function used by mImplSimpleMonitoredSet More... | |
void | stopChangeNotifications () const |
Protected Attributes | |
TypeSet< VT > | cumdata_ |
TypeSet< VT > | data_ |
SamplingData< VT > | sampling_ |
Protected Attributes inherited from MonitoredObject | |
Threads::Lock | accesslock_ |
Protected Attributes inherited from NamedObject | |
BufferString | name_ |
Friends | |
class | DataDistributionChanger< VT > |
class | DataDistributionInfoExtracter< VT > |
class | DataDistributionIter< VT > |
Additional Inherited Members | |
Public Types inherited from MonitoredObject | |
typedef CNotifier< MonitoredObject, ChangeData > | ChangeDataNotifier |
typedef int | ChangeType |
typedef int64_t | IDType |
typedef Threads ::Locker | Locker |
Public Types inherited from ObjectWithName | |
typedef OD::String | name_type |
Sharable data distribution. Sampling defaults to 0 step 1.
The data in this object can be either true 'frequencies' or 'histogram' values. More generally, if you want to obtain a 'true' distribution in the mathematical sense of the word, then you should use 'normalise', which assures that the sum of the values is 1.
The SamplingData describes the positions of the bin centers. Thus, if you have a hard start and stop, calculate the step like (stop-start)/nrbins, then put sampling.start at start + 0.5*step.
Note that it is a bad idea to have negative data (P<0). We're not checking.
The position in a distribution is a data value.
<>
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inlineprotected |
|
inline |
fast, no checks
|
inline |
|
inlinestatic |
|
inlinestatic |
|
inline |
|
inline |
|
inline |
for fast non-shared usage
|
inline |
|
inline |
|
inlinestatic |
|
static |
|
inline |
|
inlineprotected |
|
inline |
|
inline |
|
inline |
DataDistribution< VT >::mDeclMonitorableAssignment | ( | DataDistribution< VT > | ) |
|
inline |
DataDistribution< VT >::mImplSimpleMonitoredGetSet | ( | inline | , |
sampling | , | ||
setSampling | , | ||
SamplingData< VT > | , | ||
sampling_ | , | ||
cSamplingChange() | |||
) |
|
inline |
|
inline |
|
inline |
fast, no checks
|
inline |
slow, O(N)
|
protected |
|
inline |
void DataDistribution< VT >::setSize | ( | int | ) |
|
inline |
|
inline |
|
inline |
|
friend |
|
friend |
|
friend |
|
protected |
|
protected |
|
protected |
Generated at for the OpendTect seismic interpretation project. Copyright (C): dGB Beheer B.V. 1995-2022