48inline Type SoWinAbs(Type Val) {
49 return (Val < 0) ? -Val : Val;
53inline Type SoWinMin(Type a, Type b) {
54 return (b < a) ? b : a;
58inline Type SoWinMax(Type a, Type b) {
59 return (b > a) ? b : a;
63inline Type SoWinClamp(Type val, Type min, Type max) {
64 return SoWinMax(min, SoWinMin(max, val));
68inline void SoWinSwap(Type & a, Type & b) {
69 Type t = a; a = b; b = t;
76#if ! defined(SOWIN_MAJOR_VERSION)
77#define SOWIN_MAJOR_VERSION 1
79#if ! defined(SOWIN_MINOR_VERSION)
80#define SOWIN_MINOR_VERSION 6
82#if ! defined(SOWIN_MICRO_VERSION)
83#define SOWIN_MICRO_VERSION 2
85#if ! defined(SOWIN_BETA_VERSION)
86#define SOWIN_BETA_VERSION
88#if ! defined(SOWIN_VERSION)
89#define SOWIN_VERSION "1.6.2"
96# error Leave the internal SOWIN_DLL_API define alone.
128#if defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)
129# ifdef SOWIN_INTERNAL
130# ifdef SOWIN_MAKE_DLL
131# define SOWIN_DLL_API __declspec(dllexport)
135# define SOWIN_DLL_API __declspec(dllimport)
137# ifndef SOWIN_NOT_DLL
138# error Define either SOWIN_DLL or SOWIN_NOT_DLL as appropriate for your linkage! See Inventor/Win/SoWinBasic.h for further instructions.
146# define SOWIN_DLL_API
149#ifndef GUI_TOOLKIT_VERSION
150#define GUI_TOOLKIT_VERSION "GetOSDisplayString()"