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_HIGH_LOW_CLOSE_
00025 #define  _PO_HIGH_LOW_CLOSE_
00026 
00027 #include <MeshViz/graph/PoGraphMaster.h>
00028 
00029 
00030 #include <Inventor/fields/SoSFEnum.h>
00031 #include <Inventor/fields/SoMFFloat.h>
00032 
00033 
00057 class  PoHighLowClose : public PoGraphMaster {
00058   
00059   SO_KIT_HEADER(PoHighLowClose) ;
00060   
00061   
00062   SO_KIT_CATALOG_ENTRY_HEADER(highLowClose) ;
00063   
00064 
00065  public:
00066 
00067   
00068 
00072   enum HorCloseBarPosition {
00076     LEFT,   
00080     MIDDLE, 
00084     RIGHT   
00085   } ;
00086 
00087 
00088 
00089   
00090 
00094   SoMFFloat valuesX ;
00095 
00099   SoMFFloat valuesHigh ;
00100 
00104   SoMFFloat valuesLow ;
00105 
00109   SoMFFloat valuesClose ;
00110 
00114   SoSFEnum  horCloseBarPosition ;
00115 
00116 
00117 
00118   
00119 
00123   PoHighLowClose()
00124     { init(TRUE) ; }
00125 
00129   PoHighLowClose(int numValues, const float *x, const float *high,
00130                  const float *low, const float *close)
00131     { init(FALSE, numValues, x, high, low, close) ; }
00132 
00136   virtual void rebuild() ;
00137 
00138   
00139  private:
00140   static void initClass() ;
00141     static void exitClass() ;
00142 
00143  private:
00144   
00145   
00146   virtual ~PoHighLowClose() ;
00147   virtual void   setDefaultOnNonWritingFields() ;
00148   virtual SbBool setUpConnections(SbBool onOff, SbBool doItAlways = FALSE) ;
00149 
00150  private:
00151   
00152   void init(SbBool isDefault, int numValues=0, const float *x=NULL, 
00153             const float *high=NULL, const float *low=NULL, const float *close=NULL) ;
00154 
00155   
00156   FieldSensorList fieldSensorList ;
00157   
00158   
00159   SoFieldList     fieldList ;
00160 
00161 
00162 
00163 } ;
00164 
00165 
00166 
00167 #endif 
00168 
00169