MeVisLabToolboxReference
|
00001 // **InsertLicense** code 00002 //---------------------------------------------------------------------------------- 00004 00009 //---------------------------------------------------------------------------------- 00010 00011 #ifndef __SoMLLUT_H 00012 #define __SoMLLUT_H 00013 00014 #ifndef __SoUtilsSystem_H 00015 #include "SoUtilsSystem.h" 00016 #endif 00017 #ifndef __mlLUTFunction_H 00018 #include "mlLUTFunction.h" 00019 #endif 00020 #ifndef __SoSFMLBase_H 00021 #include "SoSFMLBase.h" 00022 #endif 00023 #ifndef _SO_SF_BOOL_ 00024 #include "SoSFBool.h" 00025 #endif 00026 00027 //---------------------------------------------------------------------------------- 00029 //---------------------------------------------------------------------------------- 00030 class SOUTILS_EXPORT SoMLLUT : public SoNode { 00031 00033 SO_NODE_HEADER(SoMLLUT); 00034 00035 public: 00036 00038 static void initClass(); 00039 00041 SoMLLUT(); 00042 00044 ml::LUTFunction *getLut(); 00045 00047 SoSFMLBase inLUT; 00048 00049 SoSFBool acceptExtensions; 00050 00051 protected: 00053 virtual ~SoMLLUT(); 00054 00056 00057 virtual void GLRender(SoGLRenderAction *action); 00058 virtual void callback(SoCallbackAction *action); 00059 virtual void handleEvent(SoHandleEventAction *action); 00060 virtual void rayPick(SoRayPickAction *action); 00061 virtual void doAction(SoAction *action); 00063 00064 void changeLUT(SoAction *action); 00065 00066 private: 00067 ml::LUTFunction* outLUT; 00068 }; 00069 00070 #endif