CMS 3D CMS Logo

IgSoClipPlane.h

Go to the documentation of this file.
00001 #ifndef IG_OPEN_INVENTOR_IG_SO_CLIPPLANE_H
00002 # define IG_OPEN_INVENTOR_IG_SO_CLIPPLANE_H
00003 
00004 //<<<<<< INCLUDES                                                       >>>>>>
00005 
00006 # include "Iguana/Inventor/interface/config.h"
00007 # include <Inventor/nodes/SoGroup.h>
00008 # include <Inventor/fields/SoSFBool.h>
00009 # include <Inventor/fields/SoSFPlane.h>
00010 
00011 //<<<<<< PUBLIC DEFINES                                                 >>>>>>
00012 //<<<<<< PUBLIC CONSTANTS                                               >>>>>>
00013 //<<<<<< PUBLIC TYPES                                                   >>>>>>
00014 
00015 class SoClipPlane;
00016 class SoShapeHints;
00017 class SoFieldSensor;
00018 class SoSensor;
00019 class SoWriteAction;
00020 
00021 //<<<<<< PUBLIC VARIABLES                                               >>>>>>
00022 //<<<<<< PUBLIC FUNCTIONS                                               >>>>>>
00023 //<<<<<< CLASS DECLARATIONS                                             >>>>>>
00024 
00025 #ifdef WIN32
00026 #include <SoWinLeaveScope.h>
00027 #endif // WIN32
00028 
00029 class IG_OPEN_INVENTOR_API IgSoClipPlane : public SoGroup
00030 {
00031     SO_NODE_HEADER (IgSoClipPlane);
00032 public:
00033     SoSFBool            on;
00034     SoSFBool            manip;
00035     SoSFPlane           plane;
00036 
00037     static void         initClass (void);
00038     virtual void        write (SoWriteAction *action);
00039 
00040     IgSoClipPlane (void);
00041 
00042 protected:
00043     ~IgSoClipPlane (void);
00044 
00045 private:
00046     void                reconnect      (void);
00047     void                syncPlane      (void);
00048     static void         onSensorCB     (void *me, SoSensor *data);
00049     static void         manipSensorCB  (void *me, SoSensor *data);
00050     static void         planeSensorCB  (void *me, SoSensor *data);
00051     static void         mplaneSensorCB (void *me, SoSensor *data);
00052 
00053     SoClipPlane         *m_plane;
00054     SoShapeHints        *m_shapeHints;
00055     SoFieldSensor       *m_onSensor;
00056     SoFieldSensor       *m_manipSensor;
00057     SoFieldSensor       *m_planeSensor;
00058     SoFieldSensor       *m_mplaneSensor;
00059 };
00060 #ifdef WIN32
00061 #include <SoWinEnterScope.h>
00062 #endif // WIN32
00063 
00064 //<<<<<< INLINE PUBLIC FUNCTIONS                                        >>>>>>
00065 //<<<<<< INLINE MEMBER FUNCTIONS                                        >>>>>>
00066 
00067 #endif // IG_OPEN_INVENTOR_IG_SO_CLIPPLANE_H

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