CMS 3D CMS Logo

IgSoSlicer.h

Go to the documentation of this file.
00001 #ifndef IG_OPEN_INVENTOR_IG_SO_SLICER_H
00002 # define IG_OPEN_INVENTOR_IG_SO_SLICER_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/SoSFFloat.h>
00010 # include <Inventor/fields/SoSFPlane.h>
00011 
00012 //<<<<<< PUBLIC DEFINES                                                 >>>>>>
00013 //<<<<<< PUBLIC CONSTANTS                                               >>>>>>
00014 //<<<<<< PUBLIC TYPES                                                   >>>>>>
00015 
00016 class IgSoClipPlane;
00017 class SoFieldSensor;
00018 class SoSensor;
00019 class IgSoSlicerEngine;
00020 class IgSoPlaneManip;
00021 
00022 //<<<<<< PUBLIC VARIABLES                                               >>>>>>
00023 //<<<<<< PUBLIC FUNCTIONS                                               >>>>>>
00024 //<<<<<< CLASS DECLARATIONS                                             >>>>>>
00025 
00026 # ifdef WIN32
00027 #  include <SoWinLeaveScope.h>
00028 # endif
00029 
00030 class IG_OPEN_INVENTOR_API IgSoSlicer : public SoGroup
00031 {
00032     SO_NODE_HEADER (IgSoSlicer);
00033 public:
00034     SoSFBool            on;
00035     SoSFBool            manip;
00036     SoSFFloat           thickness;
00037     SoSFPlane           plane;
00038 
00039     static void         initClass (void);
00040     virtual void        write (SoWriteAction *action);
00041 
00042     IgSoSlicer (void);
00043 
00044 protected:
00045     ~IgSoSlicer (void);
00046 
00047 private:
00048     static void         planeSensorCB (void *me, SoSensor *data);
00049     static void         mplaneSensorCB (void *me, SoSensor *data);
00050 
00051     IgSoClipPlane       *m_front;
00052     IgSoClipPlane       *m_back;
00053     IgSoPlaneManip      *m_manipPlane;
00054     IgSoSlicerEngine    *m_engine;
00055     SoFieldSensor       *m_planeSensor;
00056     SoFieldSensor       *m_mplaneSensor;
00057 };
00058 #ifdef WIN32
00059 #include <SoWinEnterScope.h>
00060 #endif // WIN32
00061 
00062 //<<<<<< INLINE PUBLIC FUNCTIONS                                        >>>>>>
00063 //<<<<<< INLINE MEMBER FUNCTIONS                                        >>>>>>
00064 
00065 #endif // IG_OPEN_INVENTOR_IG_SO_SLICER_H

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