aboutsummaryrefslogtreecommitdiffstats
path: root/LibOVR/Src/OVR_DeviceHandle.h
diff options
context:
space:
mode:
Diffstat (limited to 'LibOVR/Src/OVR_DeviceHandle.h')
-rw-r--r--LibOVR/Src/OVR_DeviceHandle.h194
1 files changed, 97 insertions, 97 deletions
diff --git a/LibOVR/Src/OVR_DeviceHandle.h b/LibOVR/Src/OVR_DeviceHandle.h
index 4ac4387..dc8b267 100644
--- a/LibOVR/Src/OVR_DeviceHandle.h
+++ b/LibOVR/Src/OVR_DeviceHandle.h
@@ -1,97 +1,97 @@
-/************************************************************************************
-
-PublicHeader: OVR.h
-Filename : OVR_DeviceHandle.h
-Content : Handle to a device that was enumerated
-Created : February 5, 2013
-Authors : Lee Cooper
-
-Copyright : Copyright 2013 Oculus VR, Inc. All Rights reserved.
-
-Use of this software is subject to the terms of the Oculus license
-agreement provided at the time of installation or download, or which
-otherwise accompanies this software in either electronic or hard copy form.
-
-*************************************************************************************/
-
-#ifndef OVR_DeviceHandle_h
-#define OVR_DeviceHandle_h
-
-#include "OVR_DeviceConstants.h"
-
-namespace OVR {
-
-class DeviceBase;
-class DeviceInfo;
-
-// Internal
-class DeviceCreateDesc;
-class DeviceEnumerationArgs;
-
-
-//-------------------------------------------------------------------------------------
-// ***** DeviceHandle
-
-// DeviceHandle references a specific device that was enumerated; it can be assigned
-// directly from DeviceEnumerator.
-//
-// Devices represented by DeviceHandle are not necessarily created or available.
-// A device may become unavailable if, for example, it its unplugged. If the device
-// is available, it can be created by calling CreateDevice.
-//
-
-class DeviceHandle
-{
- friend class DeviceManager;
- friend class DeviceManagerImpl;
- template<class B> friend class HIDDeviceImpl;
-
-public:
- DeviceHandle() : pImpl(0) { }
- DeviceHandle(const DeviceHandle& src);
- ~DeviceHandle();
-
- void operator = (const DeviceHandle& src);
-
- bool operator == (const DeviceHandle& other) const { return pImpl == other.pImpl; }
- bool operator != (const DeviceHandle& other) const { return pImpl != other.pImpl; }
-
- // operator bool() returns true if Handle/Enumerator points to a valid device.
- operator bool () const { return GetType() != Device_None; }
-
- // Returns existing device, or NULL if !IsCreated. The returned ptr is
- // addref-ed.
- DeviceBase* GetDevice_AddRef() const;
- DeviceType GetType() const;
- bool GetDeviceInfo(DeviceInfo* info) const;
- bool IsAvailable() const;
- bool IsCreated() const;
- // Returns true, if the handle contains the same device ptr
- // as specified in the parameter.
- bool IsDevice(DeviceBase*) const;
-
- // Creates a device, or returns AddRefed pointer if one is already created.
- // New devices start out with RefCount of 1.
- DeviceBase* CreateDevice();
-
- // Creates a device, or returns AddRefed pointer if one is already created.
- // New devices start out with RefCount of 1. DeviceT is used to cast the
- // DeviceBase* to a concreete type.
- template <class DeviceT>
- DeviceT* CreateDeviceTyped() const
- {
- return static_cast<DeviceT*>(DeviceHandle(*this).CreateDevice());
- }
-
- // Resets the device handle to uninitialized state.
- void Clear();
-
-protected:
- explicit DeviceHandle(DeviceCreateDesc* impl);
- bool enumerateNext(const DeviceEnumerationArgs& args);
- DeviceCreateDesc* pImpl;
-};
-
-} // namespace OVR
-
-#endif
+/************************************************************************************
+
+PublicHeader: OVR.h
+Filename : OVR_DeviceHandle.h
+Content : Handle to a device that was enumerated
+Created : February 5, 2013
+Authors : Lee Cooper
+
+Copyright : Copyright 2013 Oculus VR, Inc. All Rights reserved.
+
+Use of this software is subject to the terms of the Oculus license
+agreement provided at the time of installation or download, or which
+otherwise accompanies this software in either electronic or hard copy form.
+
+*************************************************************************************/
+
+#ifndef OVR_DeviceHandle_h
+#define OVR_DeviceHandle_h
+
+#include "OVR_DeviceConstants.h"
+
+namespace OVR {
+
+class DeviceBase;
+class DeviceInfo;
+
+// Internal
+class DeviceCreateDesc;
+class DeviceEnumerationArgs;
+
+
+//-------------------------------------------------------------------------------------
+// ***** DeviceHandle
+
+// DeviceHandle references a specific device that was enumerated; it can be assigned
+// directly from DeviceEnumerator.
+//
+// Devices represented by DeviceHandle are not necessarily created or available.
+// A device may become unavailable if, for example, it its unplugged. If the device
+// is available, it can be created by calling CreateDevice.
+//
+
+class DeviceHandle
+{
+ friend class DeviceManager;
+ friend class DeviceManagerImpl;
+ template<class B> friend class HIDDeviceImpl;
+
+public:
+ DeviceHandle() : pImpl(0) { }
+ DeviceHandle(const DeviceHandle& src);
+ ~DeviceHandle();
+
+ void operator = (const DeviceHandle& src);
+
+ bool operator == (const DeviceHandle& other) const { return pImpl == other.pImpl; }
+ bool operator != (const DeviceHandle& other) const { return pImpl != other.pImpl; }
+
+ // operator bool() returns true if Handle/Enumerator points to a valid device.
+ operator bool () const { return GetType() != Device_None; }
+
+ // Returns existing device, or NULL if !IsCreated. The returned ptr is
+ // addref-ed.
+ DeviceBase* GetDevice_AddRef() const;
+ DeviceType GetType() const;
+ bool GetDeviceInfo(DeviceInfo* info) const;
+ bool IsAvailable() const;
+ bool IsCreated() const;
+ // Returns true, if the handle contains the same device ptr
+ // as specified in the parameter.
+ bool IsDevice(DeviceBase*) const;
+
+ // Creates a device, or returns AddRefed pointer if one is already created.
+ // New devices start out with RefCount of 1.
+ DeviceBase* CreateDevice();
+
+ // Creates a device, or returns AddRefed pointer if one is already created.
+ // New devices start out with RefCount of 1. DeviceT is used to cast the
+ // DeviceBase* to a concreete type.
+ template <class DeviceT>
+ DeviceT* CreateDeviceTyped() const
+ {
+ return static_cast<DeviceT*>(DeviceHandle(*this).CreateDevice());
+ }
+
+ // Resets the device handle to uninitialized state.
+ void Clear();
+
+protected:
+ explicit DeviceHandle(DeviceCreateDesc* impl);
+ bool enumerateNext(const DeviceEnumerationArgs& args);
+ DeviceCreateDesc* pImpl;
+};
+
+} // namespace OVR
+
+#endif