IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
CumulativeHistogramData.h
1 // CumulativeHistogramData.h:
3 // --------------------------
4 //
15 
16 #ifndef __IPSDKIPLATTRIBUTES_CUMULATIVEHISTOGRAMDATA_H__
17 #define __IPSDKIPLATTRIBUTES_CUMULATIVEHISTOGRAMDATA_H__
18 
21 #include <IPSDKIPL/IPSDKIPLAttributes/DataItem/HistogramData.h>
22 
23 namespace ipsdk {
24 namespace imaproc {
25 namespace attr {
26 
32 
33 IPSDK_DECLARE_NODE_DATA(IPSDKIPLAttributes, CumulativeHistogramData,
34  ((LEAF)(Min)(ipsdk::ipReal64))
35  ((LEAF)(Max)(ipsdk::ipReal64))
36  ((LEAF)(BinWidth)(ipsdk::ipReal64))
37  ((LEAF_COLL)(Frequencies)(ipsdk::ipUInt64)))
38 
39 public:
41  ipsdk::ipReal64 getRange() const;
42 
46  ipsdk::ipReal64 getBinMin(const ipUInt32 nBinIdx) const;
47 
51  ipsdk::ipReal64 getBinMax(const ipUInt32 nBinIdx) const;
52 
56  ipsdk::ipReal64 getBinMean(const ipUInt32 nBinIdx) const;
57 
61  ipsdk::ipReal64 getBinRange(const ipUInt32 nBinIdx) const;
62 
64  ipsdk::ipUInt32 getNbClasses() const;
65 
68  ipsdk::Real64Vector getBinMinColl() const;
69 
72  ipsdk::Real64Vector getBinMaxColl() const;
73 
76  ipsdk::Real64Vector getBinMeanColl() const;
77 
80  ipsdk::Real64Vector getBinRangeColl() const;
81 
83  ipsdk::ipUInt64 getPopulation() const;
84 
86  ipsdk::ipReal64 getQuantile(ipReal64 ratePerCent);
87 };
88 
91 
94 typedef boost::shared_ptr<ipsdk::imaproc::attr::CumulativeHistogramData> CumulativeHistogramDataPtr;
95 
98 typedef boost::shared_ptr<const ipsdk::imaproc::attr::CumulativeHistogramData> CumulativeHistogramDataConstPtr;
99 
106 
109 
110 } // end of namespace attr
111 } // end of namespace imaproc
112 } // end of namespace ipsdk
113 
114 #endif // __IPSDKIPLATTRIBUTES_CUMULATIVEHISTOGRAMDATA_H__
#define IPSDK_DECLARE_NODE_DATA(libraryName, className, childSeq)
std::vector< ipReal64 > Real64Vector
uint64_t ipUInt64
boost::shared_ptr< const ipsdk::imaproc::attr::HistogramData > HistogramDataConstPtr
shared pointer to const ipsdk::imaproc::HistogramData
Definition: HistogramData.h:235
double ipReal64
IPSDKIPLATTRIBUTES_API CumulativeHistogramDataPtr createCumulativeHistogramData(const HistogramDataConstPtr &pHistogramData)
function allowing to create a cumulative histogram from a histogram
boost::shared_ptr< const ipsdk::imaproc::attr::CumulativeHistogramData > CumulativeHistogramDataConstPtr
shared pointer to const ipsdk::imaproc::CumulativeHistogramData
Definition: CumulativeHistogramData.h:234
Definition of import/export macro for library.
#define IPSDKIPLATTRIBUTES_API
Import/Export macro for library IPSDKIPLAttributes.
Definition: IPSDKIPLAttributesExports.h:25
boost::shared_ptr< ipsdk::imaproc::attr::CumulativeHistogramData > CumulativeHistogramDataPtr
shared pointer to ipsdk::imaproc::CumulativeHistogramData
Definition: CumulativeHistogramData.h:230
uint32_t ipUInt32