diff --git a/genwrapper.conf b/genwrapper.conf index 9b24ad1e1..065e4e650 100644 --- a/genwrapper.conf +++ b/genwrapper.conf @@ -319,6 +319,14 @@ configure reflector "osg::GraphicsContext" abstract-object-type end +configure reflector "OpenThreads::Atomic" + object-type +end + +configure reflector "OpenThreads::AtomicPtr" + object-type +end + ############################################################################# # Suppress nested nested class method diff --git a/include/OpenThreads/Atomic b/include/OpenThreads/Atomic index 6c8ef147b..f8a8abb85 100644 --- a/include/OpenThreads/Atomic +++ b/include/OpenThreads/Atomic @@ -31,7 +31,7 @@ namespace OpenThreads { * @class Atomic * @brief This class provides an atomic increment and decrement operation. */ -class OPENTHREAD_EXPORT_DIRECTIVE Atomic { +class Atomic { public: Atomic(unsigned value = 0) : _value(value) { } @@ -91,6 +91,7 @@ class OPENTHREAD_EXPORT_DIRECTIVE Atomic { } private: + Atomic(const Atomic&); Atomic& operator=(const Atomic&); @@ -111,7 +112,7 @@ class OPENTHREAD_EXPORT_DIRECTIVE Atomic { * @brief This class provides an atomic pointer assignment using cas operations. */ template -class OPENTHREAD_EXPORT_DIRECTIVE AtomicPtr { +class AtomicPtr { public: AtomicPtr(T* ptr = 0) : _ptr(ptr) { } diff --git a/src/osgWrappers/OpenThreads/Atomic.cpp b/src/osgWrappers/OpenThreads/Atomic.cpp new file mode 100644 index 000000000..2b06b6e6f --- /dev/null +++ b/src/osgWrappers/OpenThreads/Atomic.cpp @@ -0,0 +1,31 @@ +// *************************************************************************** +// +// Generated automatically by genwrapper. +// Please DO NOT EDIT this file! +// +// *************************************************************************** + +#include +#include +#include +#include + +#include + +// Must undefine IN and OUT macros defined in Windows headers +#ifdef IN +#undef IN +#endif +#ifdef OUT +#undef OUT +#endif + +BEGIN_OBJECT_REFLECTOR(OpenThreads::Atomic) + I_DeclaringFile("OpenThreads/Atomic"); + I_ConstructorWithDefaults1(IN, unsigned, value, 0, + Properties::NON_EXPLICIT, + ____Atomic__unsigned, + "", + ""); +END_REFLECTOR +