00001
00002
00003
00004
00005
00006
00007
00008
00009 #ifndef HxHistogramTiedSvt_h
00010 #define HxHistogramTiedSvt_h
00011
00012 #include <OB/CORBA.h>
00013 #include "HxCorbaHistogram_skel_tie.h"
00014 #include "HxHistogram.h"
00015 #include "HxTagList.h"
00016 #include "HxGeoIntType.h"
00017
00018
00019
00021 class HxHistogramTiedSvt : public HxHistogram
00022 {
00023 public:
00024
00025 typedef POA_HxCorba::Histogram_tie<HxHistogramTiedSvt> TieT;
00026
00027
00028 typedef HxHistogram HxT;
00029 typedef HxCorba::Histogram CorbaT;
00030 typedef HxCorba::HistogramList SeqT;
00031
00032
00033 HxHistogramTiedSvt(const HxHistogram& obj);
00034 virtual ~HxHistogramTiedSvt();
00035
00036 void destroy();
00037
00038
00039
00040
00041
00042
00043
00044
00045
00046
00047
00048 CORBA::Double get1(CORBA::Long bin1);
00049 CORBA::Double get2(CORBA::Long bin1, CORBA::Long bin2);
00050 CORBA::Double get3(CORBA::Long bin1, CORBA::Long bin2,
00051 CORBA::Long bin3);
00052
00053
00054
00055
00056 CORBA::Double maxValIndex(CORBA::Long_out index);
00057
00058 HxCorba::BinDataSequence* getDataDouble();
00059
00060 void render3d(HxCorba::RgbBuffer_ptr buf,
00061 CORBA::Long dataWidth, CORBA::Long dataHeight,
00062 CORBA::Double elevation, CORBA::Double alpha,
00063 CORBA::Double threshold);
00064
00065 HxCorba::Histogram_ptr smooth(CORBA::Double sigma);
00066 HxCorba::HistogramModeSeq* modes();
00067
00068 HxCorba::Histogram_ptr normalize(CORBA::Double weight);
00069 CORBA::Double intersection(HxCorba::Histogram_ptr h);
00070 CORBA::Double chiSquare(HxCorba::Histogram_ptr h);
00071 CORBA::Double chiSquareNorm(HxCorba::Histogram_ptr h);
00072
00073
00074 HxCorba::Histogram_ptr threshold(CORBA::Double valThreshold);
00075 HxCorba::Histogram_ptr reduceRange(CORBA::Long binMin1, CORBA::Long binMax1,
00076 CORBA::Long binMin2, CORBA::Long binMax2,
00077 CORBA::Long binMin3, CORBA::Long binMax3);
00078 HxCorba::Histogram_ptr reduceRangeVal(CORBA::Double binValMin1,
00079 CORBA::Double binValMax1,
00080 CORBA::Double binValMin2,
00081 CORBA::Double binValMax2,
00082 CORBA::Double binValMin3,
00083 CORBA::Double binValMax3);
00084 HxCorba::Histogram_ptr to1D(CORBA::Long dim);
00085 void put();
00086 };
00087
00088 #endif