00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024 #ifndef _PO_SINGLE_HISTOGRAM_
00025 #define _PO_SINGLE_HISTOGRAM_
00026
00027 #include <MeshViz/graph/PoHistogram.h>
00028
00029 #include <Inventor/fields/SoMFString.h>
00030 #include <Inventor/fields/SoMFFloat.h>
00031
00082 class PoSingleHistogram : public PoHistogram {
00083
00084 SO_KIT_HEADER(PoSingleHistogram) ;
00085
00086
00087 public:
00088
00089
00090
00094 SoMFFloat value ;
00095
00100 SoMFString name ;
00101
00102
00103
00104
00105
00109 PoSingleHistogram()
00110 { init(TRUE, SbVec2f(0.,0.), 1., X, 0, NULL, NULL) ; }
00111
00116 PoSingleHistogram(const SbVec2f &_start, float _end, PoHistogram::Type _type,
00117 int numValues, const float *_value, const char **_name)
00118 { init(FALSE, _start, _end, _type, numValues, _value, _name) ; }
00119
00123 virtual void rebuild() ;
00124
00125
00126 private:
00127 static void initClass() ;
00128 static void exitClass() ;
00129
00130 private:
00131
00132 virtual ~PoSingleHistogram() ;
00133 virtual void setDefaultOnNonWritingFields() ;
00134 virtual SbBool setUpConnections(SbBool onOff, SbBool doItAlways = FALSE) ;
00135
00136
00137 void colorBars(SoGroup *group) ;
00138
00139 private:
00140
00141 void init(SbBool isDefault, const SbVec2f &_start, float _end,
00142 Type _type, int numValues, const float *_value, const char **_name) ;
00143
00144
00145 void buildXHistog() ;
00146 void buildYHistog() ;
00147
00148
00149 FieldSensorList m_fieldSensorList ;
00150
00151
00152 SoFieldList m_fieldList ;
00153
00154 } ;
00155
00156
00157
00158 #endif
00159
00160