00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024 #if defined(_WIN32) && defined(_MSC_VER)
00025 # ifdef _WIN64
00026 # define PROC_ARCH processorArchitecture='amd64'
00027 # else
00028 # define PROC_ARCH processorArchitecture='x86'
00029 # endif
00030 # if (_MSC_VER == 1400 ) || (_MSC_VER == 1500 )
00031 # ifdef _WIN64
00032 # pragma comment(linker, "\"/manifestdependency:type='win32' name='Microsoft.VC80.CRT' version='8.0.50608.0' processorArchitecture='amd64' publicKeyToken='1fc8b3b9a1e18e3b'\"")
00033 # else
00034 # pragma comment(linker, "\"/manifestdependency:type='win32' name='Microsoft.VC80.CRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'\"")
00035 # endif
00036 # elif (_MSC_VER == 1500 )
00037 # ifdef _WIN64
00038 # pragma comment(linker, "\"/manifestdependency:type='win32' name='Microsoft.VC90.CRT' version='9.0.20404.44800' processorArchitecture='amd64' publicKeyToken='1fc8b3b9a1e18e3b'\"")
00039 # else
00040 # pragma comment(linker, "\"/manifestdependency:type='win32' name='Microsoft.VC90.CRT' version='9.0.20404.44800' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'\"")
00041 # endif
00042 # endif
00043 #endif
00044
00045 #include <Inventor/sys/port.h>
00046 #include <Inventor/SbBasic.h>
00047 #include <Inventor/STL/map>
00048 #include <Inventor/events/SoKeyboardEvent.h>
00049 #include <Inventor/ViewerComponents/SoRenderAreaCore.h>
00050
00051 #include <IvTune/SoIvTuneLibName.h>
00052 #include <IvTune/SoInventorStudioLibName.h>
00053
00054 #if defined(_WIN32)
00055 # ifndef IvTune_EXPORTS
00056 # ifndef OIV_DISABLE_AUTOLINK
00057 # pragma comment(lib,__LIBINVENTORSTUDIOLIB)
00058 # endif
00059 # endif
00060 #endif
00061
00062 #include <Inventor/SoModule.h>
00063 SO_MODULE_HEADER(SoIvTune, __IVTUNEDLL)
00064 SO_MODULE_HEADER(SoInventorStudio, __LIBINVENTORSTUDIODLL)
00065
00066 #ifndef SoIvTune_included
00067 #define SoIvTune_included
00068
00069 #if defined(_WIN32)
00070 # pragma warning(disable:4251)
00071 #endif
00072
00073 class SoNode;
00074 class QWidget;
00075 class QStringList;
00076 class QString;
00077 class SbViewportRegion;
00078 class SbVec2s;
00079 class SoGuiRenderArea;
00080 class SoSceneManager;
00081
00135 class SoIvTune
00136 {
00137
00138 public:
00139
00145 static void start( const SoRenderAreaCore* );
00146
00153 static void start( SoNode* );
00154
00159 static void stop();
00160
00164 static bool isRunning();
00165
00174 static bool processEvents();
00175
00179 static void setShortcutValue(SoKeyboardEvent::Key);
00180
00184 static SoKeyboardEvent::Key getShortcutValue();
00185
00186 #if 1 SoDEPRECATED
00193 static void start( SoSceneManager* );
00194 #endif
00196 #if 1 SoDEPRECATED
00204 static void setInstance(int argc, char ** argv, SoNode * root, bool createViewer = false);
00205 SoDEPRECATED
00227 static void setInstance(int argc, char **argv, SoGuiRenderArea* viewer);
00228 SoDEPRECATED
00250 static void launch(int argc, char **argv, SoGuiRenderArea* viewer);
00251 SoDEPRECATED
00256 static SbBool isInstance();
00257
00258 #endif
00260 private:
00261
00271 static void start( SoSceneManager*, void* parentWindow );
00272
00282 static void start( SoNode*, void* parentWindow );
00283
00287 static void setPickAction( const SbViewportRegion ®ion, SbVec2s mouseCoord );
00288
00292 static void setSceneGraph(SoNode* node);
00293
00295 ~SoIvTune();
00296
00297 private:
00298
00300 SoIvTune();
00301 };
00302
00303 #endif //SoIvTune_included
00304
00305