CMS 3D CMS Logo

Ig3DVec4fControl.h

Go to the documentation of this file.
00001 #ifndef IGUANA_GL_BROWSERS_IG_3DVEC_4F_CONTROL_H
00002 # define IGUANA_GL_BROWSERS_IG_3DVEC_4F_CONTROL_H
00003 
00004 //<<<<<< INCLUDES                                                       >>>>>>
00005 
00006 # include "Iguana/GLBrowsers/interface/Ig3DVectorBaseControl.h"
00007 # include <Inventor/SbLinear.h>
00008 # include <Inventor/fields/SoSFVec4f.h>
00009 
00010 //<<<<<< PUBLIC DEFINES                                                 >>>>>>
00011 //<<<<<< PUBLIC CONSTANTS                                               >>>>>>
00012 //<<<<<< PUBLIC TYPES                                                   >>>>>>
00013 //<<<<<< PUBLIC VARIABLES                                               >>>>>>
00014 //<<<<<< PUBLIC FUNCTIONS                                               >>>>>>
00015 //<<<<<< CLASS DECLARATIONS                                             >>>>>>
00016 
00017 class IGUANA_GL_BROWSERS_API Ig3DVec4fControl : public Ig3DVectorBaseControl
00018 {
00019     Q_OBJECT
00020 public:
00021     Ig3DVec4fControl (IgControlCategory *pane,
00022                       QString           label,
00023                       QString           labels = "X:Y:Z:W");
00024     // implicit copy constructor
00025     // implicit assignment operator
00026     // implicit destructor
00027 
00028     // Field and field value access
00029     SoSFVec4f *         field (void) const;
00030     void                setField (SoSFVec4f *field);
00031     SbVec4f             fieldValue (void) const;
00032 
00033     // Control value and change access
00034     float               xValue (void) const;
00035     float               yValue (void) const;
00036     float               zValue (void) const;
00037     float               wValue (void) const;
00038     SbVec4f             value (void) const;
00039 
00040     bool                isChanged (void) const;
00041     float               xChange (void) const;
00042     float               yChange (void) const;
00043     float               zChange (void) const;
00044     float               wChange (void) const;
00045     SbVec4f             change (void) const;
00046 
00047     // Access to the x,y,z control
00048     IgQtRangeControlFloat *     xControl (void) const;
00049     IgQtRangeControlFloat *     yControl (void) const;
00050     IgQtRangeControlFloat *     zControl (void) const;
00051     IgQtRangeControlFloat *     wControl (void) const;
00052     IgQtRangeControlFloat *     control  (void) const;
00053     
00054     using Ig3DVectorBaseControl::setValue;
00055     using Ig3DVectorBaseControl::value;
00056     using Ig3DVectorBaseControl::change;
00057     using Ig3DVectorBaseControl::control;
00058 public slots:
00059     virtual void        setValue (const SbVec4f &vec);
00060     virtual void        setValue (float x, float y, float z, float w);
00061 
00062 protected:
00063     virtual void        updateValue (void);
00064     virtual void        applyValue (void);
00065 };
00066 
00067 //<<<<<< INLINE PUBLIC FUNCTIONS                                        >>>>>>
00068 //<<<<<< INLINE MEMBER FUNCTIONS                                        >>>>>>
00069 
00070 #endif // IGUANA_GL_BROWSERS_IG_3DVEC_4F_CONTROL_H

Generated on Tue Jun 9 17:38:31 2009 for CMSSW by  doxygen 1.5.4