Horus Doc || IDL Reference || C++ Binding   Java Binding || Doxygen's quick Index  

HxCorbaHistogram.idl

Go to the documentation of this file.
00001 /*
00002  *  Copyright (c) 2000, University of Amsterdam, The Netherlands.
00003  *  All rights reserved.
00004  *
00005  *  Author(s):
00006  *  Marc Navarro            (mnavarro@wins.uva.nl)
00007  */
00008 
00009 #ifndef HxCorbaHistogram_idl
00010 #define HxCorbaHistogram_idl
00011 
00012 #include "HxCorbaImageRep.idl"
00013 
00014 module HxCorba
00015 {
00016 
00018 typedef sequence<double> BinDataSequence;
00019 
00020 
00022 interface HistogramData
00023 {
00024     long            dimensionality();
00025     long            dimensionSize(in long dim);
00026     long            nrOfBins();
00027 
00028     double          lowBin(in long dim);
00029     double          highBin(in long dim);
00030     double          binWidth(in long dim);
00031     double          binToValue(in long bin, in long dim);
00032     long            valueToBin(in double value, in long dim);
00033 
00034     double          get1(in long bin1);
00035     double          get2(in long bin1, in long bin2);
00036     double          get3(in long bin1, in long bin2, in long bin3);
00037 
00038     double          sum();
00039     double          minVal();
00040     double          maxVal();
00041     double          maxValIndex(out long index);
00042 
00043     BinDataSequence getDataDouble();
00044 };
00045 
00047 struct HistogramMode { double x; double y; };
00048 
00050 typedef sequence<HistogramMode> HistogramModeSeq;
00051 
00052 
00054 interface Histogram : HistogramData
00055 {
00056     Histogram           smooth(in double sigma);
00057     HistogramModeSeq    modes();    
00058     Histogram           normalize(in double weight);
00059     double              intersection(in Histogram h);
00060     double              chiSquare(in Histogram h);
00061     double              chiSquareNorm(in Histogram h);
00062 
00063     Histogram           threshold(in double valThreshold);
00064     long                countBins(in double valThreshold);
00065     Histogram           reduceRange(in long binMin1, in long binMax1,
00066                             in long binMin2, in long binMax2,
00067                             in long binMin3, in long binMax3);
00068     Histogram           reduceRangeVal(in double binValMin1, in double binValMax1,
00069                             in double binValMin2, in double binValMax2,
00070                             in double binValMin3, in double binValMax3);
00071     Histogram           to1D(in long dim);
00072 
00073     void                render3d(in RgbBuffer buf, in long dataWidth, 
00074                             in long dataHeight, in double elevation, 
00075                             in double alpha, in double threshold);
00076 
00077     void                destroy();
00078     void                put();
00079 };
00080 
00081 
00083 interface HistogramFactory
00084 {
00085     Histogram     makeHistogramFromFile(in string filename);
00086 };
00087     
00089 typedef sequence<Histogram> HistogramList;
00090 
00091 }; // module HxCorba
00092 
00093 #endif //HxCorbaHistogram_idl

Generated on Mon Jan 27 15:09:38 2003 for IDLReference by doxygen1.2.12 written by Dimitri van Heesch, © 1997-2001