// ***************************************************************************
//
//   Generated automatically by genwrapper.
//   Please DO NOT EDIT this file!
//
// ***************************************************************************

#include <osgIntrospection/ReflectionMacros>
#include <osgIntrospection/TypedMethodInfo>
#include <osgIntrospection/StaticMethodInfo>
#include <osgIntrospection/Attributes>

#include <OpenThreads/ReadWriteMutex>

// Must undefine IN and OUT macros defined in Windows headers
#ifdef IN
#undef IN
#endif
#ifdef OUT
#undef OUT
#endif

BEGIN_OBJECT_REFLECTOR(OpenThreads::ReadWriteMutex)
	I_DeclaringFile("OpenThreads/ReadWriteMutex");
	I_Constructor0(____ReadWriteMutex,
	               "",
	               "");
	I_Method0(int, readLock,
	          Properties::VIRTUAL,
	          __int__readLock,
	          "",
	          "");
	I_Method0(int, readUnlock,
	          Properties::VIRTUAL,
	          __int__readUnlock,
	          "",
	          "");
	I_Method0(int, writeLock,
	          Properties::VIRTUAL,
	          __int__writeLock,
	          "",
	          "");
	I_Method0(int, writeUnlock,
	          Properties::VIRTUAL,
	          __int__writeUnlock,
	          "",
	          "");
	I_ProtectedConstructor1(IN, const OpenThreads::ReadWriteMutex &, x,
	                        Properties::NON_EXPLICIT,
	                        ____ReadWriteMutex__C5_ReadWriteMutex_R1,
	                        "",
	                        "");
END_REFLECTOR

BEGIN_VALUE_REFLECTOR(OpenThreads::ScopedReadLock)
	I_DeclaringFile("OpenThreads/ReadWriteMutex");
	I_Constructor1(IN, OpenThreads::ReadWriteMutex &, mutex,
	               Properties::NON_EXPLICIT,
	               ____ScopedReadLock__ReadWriteMutex_R1,
	               "",
	               "");
END_REFLECTOR

BEGIN_VALUE_REFLECTOR(OpenThreads::ScopedWriteLock)
	I_DeclaringFile("OpenThreads/ReadWriteMutex");
	I_Constructor1(IN, OpenThreads::ReadWriteMutex &, mutex,
	               Properties::NON_EXPLICIT,
	               ____ScopedWriteLock__ReadWriteMutex_R1,
	               "",
	               "");
END_REFLECTOR

