# HG changeset patch
# User StephaneLenclud
# Date 1426426761 -3600
# Node ID 831ebeeecfdf84759d6dc56e6f57ef54c1d85b73
# Parent  e8bb372ae58bf3226a0681a3ddaccc72d9d57715
Copyright and namespace.
diff -r e8bb372ae58b -r 831ebeeecfdf AssemblyInfo.cs
--- a/AssemblyInfo.cs	Sun Mar 15 14:07:17 2015 +0100
+++ b/AssemblyInfo.cs	Sun Mar 15 14:39:21 2015 +0100
@@ -1,3 +1,22 @@
+//
+// Copyright (C) 2014-2015 Stéphane Lenclud.
+//
+// This file is part of SharpLibHid.
+//
+// SharpDisplayManager is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// SharpDisplayManager is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with SharpDisplayManager.  If not, see .
+//
+
 using System.Reflection;
 using System.Runtime.CompilerServices;
 
diff -r e8bb372ae58b -r 831ebeeecfdf HidDevice.cs
--- a/HidDevice.cs	Sun Mar 15 14:07:17 2015 +0100
+++ b/HidDevice.cs	Sun Mar 15 14:39:21 2015 +0100
@@ -1,3 +1,23 @@
+//
+// Copyright (C) 2014-2015 Stéphane Lenclud.
+//
+// This file is part of SharpLibHid.
+//
+// SharpDisplayManager is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// SharpDisplayManager is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with SharpDisplayManager.  If not, see .
+//
+
+
 using System;
 using System.Windows.Forms;
 using System.Runtime.InteropServices;
@@ -6,7 +26,7 @@
 using Microsoft.Win32.SafeHandles;
 using Win32;
 
-namespace Hid
+namespace SharpLibHid
 {
     /// 
     /// Represent a HID device.
@@ -224,12 +244,12 @@
             if (Info.dwType == RawInputDeviceType.RIM_TYPEHID)
             {
                 //Process usage page
-                if (Enum.IsDefined(typeof(Hid.UsagePage), Info.hid.usUsagePage))
+                if (Enum.IsDefined(typeof(UsagePage), Info.hid.usUsagePage))
                 {
                     //We know this usage page, add its name
-                    Hid.UsagePage usagePage = (Hid.UsagePage)Info.hid.usUsagePage;
+                    UsagePage usagePage = (UsagePage)Info.hid.usUsagePage;
                     suffix += " ( " + usagePage.ToString() + ", ";
-                    usageCollectionType = Hid.Utils.UsageCollectionType(usagePage);
+                    usageCollectionType = Utils.UsageCollectionType(usagePage);
                 }
                 else
                 {
diff -r e8bb372ae58b -r 831ebeeecfdf HidEvent.cs
--- a/HidEvent.cs	Sun Mar 15 14:07:17 2015 +0100
+++ b/HidEvent.cs	Sun Mar 15 14:39:21 2015 +0100
@@ -1,3 +1,23 @@
+//
+// Copyright (C) 2014-2015 Stéphane Lenclud.
+//
+// This file is part of SharpLibHid.
+//
+// SharpDisplayManager is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// SharpDisplayManager is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with SharpDisplayManager.  If not, see .
+//
+
+
 using System;
 using System.Windows.Forms;
 using System.Runtime.InteropServices;
@@ -7,9 +27,10 @@
 using Win32;
 using System.Collections.Generic;
 using System.Timers;
+using SharpLibHid.Usage;
 
 
-namespace Hid
+namespace SharpLibHid
 {
     /// 
     /// We provide utility functions to interpret gamepad dpad state.
@@ -142,7 +163,7 @@
                 if (RawInput.header.hDevice != IntPtr.Zero)
                 {
                     //Get various information about this HID device
-                    Device = new Hid.HidDevice(RawInput.header.hDevice);
+                    Device = new HidDevice(RawInput.header.hDevice);
                 }
 
                 if (RawInput.header.dwType == Win32.RawInputDeviceType.RIM_TYPEHID)  //Check that our raw input is HID                        
@@ -412,7 +433,7 @@
         /// 
         public DirectionPadState GetDirectionPadState()
         {
-            int index=GetValueCapabilitiesIndex((ushort)Hid.UsagePage.GenericDesktopControls, (ushort)Hid.Usage.GenericDesktop.HatSwitch);
+            int index=GetValueCapabilitiesIndex((ushort)SharpLibHid.UsagePage.GenericDesktopControls, (ushort)GenericDesktop.HatSwitch);
             if (index < 0)
             {
                 //No hat switch found
@@ -508,12 +529,12 @@
                 UsagePage usagePage = (UsagePage)UsagePage;
                 switch (usagePage)
                 {
-                    case Hid.UsagePage.Consumer:
-                        usageText += ((Hid.Usage.ConsumerControl)usage).ToString();
+                    case SharpLibHid.UsagePage.Consumer:
+                        usageText += ((ConsumerControl)usage).ToString();
                         break;
 
-                    case Hid.UsagePage.WindowsMediaCenterRemoteControl:
-                        usageText += ((Hid.Usage.WindowsMediaCenterRemoteControl)usage).ToString();
+                    case SharpLibHid.UsagePage.WindowsMediaCenterRemoteControl:
+                        usageText += ((WindowsMediaCenterRemoteControl)usage).ToString();
                         break;
 
                     default:
diff -r e8bb372ae58b -r 831ebeeecfdf HidHandler.cs
--- a/HidHandler.cs	Sun Mar 15 14:07:17 2015 +0100
+++ b/HidHandler.cs	Sun Mar 15 14:39:21 2015 +0100
@@ -1,3 +1,23 @@
+//
+// Copyright (C) 2014-2015 Stéphane Lenclud.
+//
+// This file is part of SharpLibHid.
+//
+// SharpDisplayManager is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// SharpDisplayManager is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with SharpDisplayManager.  If not, see .
+//
+
+
 using System;
 using System.Windows.Forms;
 using System.Runtime.InteropServices;
@@ -8,7 +28,7 @@
 using System.Collections.Generic;
 
 
-namespace Hid
+namespace SharpLibHid
 {
     /// 
     /// Our HID handler manages raw input registrations, processes WM_INPUT messages and broadcasts HID events in return.
@@ -30,7 +50,7 @@
 
         public void ProcessInput(Message aMessage)
         {
-            Hid.HidEvent hidEvent = new Hid.HidEvent(aMessage, OnHidEventRepeat);
+            HidEvent hidEvent = new HidEvent(aMessage, OnHidEventRepeat);
             hidEvent.DebugWrite();
 
             if (!hidEvent.IsValid || !hidEvent.IsGeneric)
diff -r e8bb372ae58b -r 831ebeeecfdf HidUsageTables.cs
--- a/HidUsageTables.cs	Sun Mar 15 14:07:17 2015 +0100
+++ b/HidUsageTables.cs	Sun Mar 15 14:39:21 2015 +0100
@@ -1,8 +1,23 @@
 //
+// Copyright (C) 2014-2015 Stéphane Lenclud.
 //
+// This file is part of SharpLibHid.
+//
+// SharpDisplayManager is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// SharpDisplayManager is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with SharpDisplayManager.  If not, see .
 //
 
-namespace Hid
+namespace SharpLibHid
 {
     /// 
     /// From USB HID usage tables.
diff -r e8bb372ae58b -r 831ebeeecfdf HidUtils.cs
--- a/HidUtils.cs	Sun Mar 15 14:07:17 2015 +0100
+++ b/HidUtils.cs	Sun Mar 15 14:39:21 2015 +0100
@@ -1,8 +1,27 @@
-using System;
+//
+// Copyright (C) 2014-2015 Stéphane Lenclud.
+//
+// This file is part of SharpLibHid.
+//
+// SharpDisplayManager is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// SharpDisplayManager is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with SharpDisplayManager.  If not, see .
+//
+
+using System;
 using System.Collections.Generic;
 using System.Text;
 
-namespace Hid
+namespace SharpLibHid
 {
     static class Utils
     {
diff -r e8bb372ae58b -r 831ebeeecfdf MainForm.Designer.cs
--- a/MainForm.Designer.cs	Sun Mar 15 14:07:17 2015 +0100
+++ b/MainForm.Designer.cs	Sun Mar 15 14:39:21 2015 +0100
@@ -1,4 +1,23 @@
-using System;
+//
+// Copyright (C) 2014-2015 Stéphane Lenclud.
+//
+// This file is part of SharpLibHid.
+//
+// SharpDisplayManager is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// SharpDisplayManager is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with SharpDisplayManager.  If not, see .
+//
+
+using System;
 using System.Collections.Generic;
 using System.Text;
 
diff -r e8bb372ae58b -r 831ebeeecfdf MainForm.cs
--- a/MainForm.cs	Sun Mar 15 14:07:17 2015 +0100
+++ b/MainForm.cs	Sun Mar 15 14:39:21 2015 +0100
@@ -1,3 +1,22 @@
+//
+// Copyright (C) 2014-2015 Stéphane Lenclud.
+//
+// This file is part of SharpLibHid.
+//
+// SharpDisplayManager is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// SharpDisplayManager is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with SharpDisplayManager.  If not, see .
+//
+
 using System;
 using System.Drawing;
 using System.Collections;
@@ -34,7 +53,7 @@
         private TreeView treeViewDevices;
 		private Timer _timer;
 
-        public delegate void OnHidEventDelegate(object aSender, Hid.HidEvent aHidEvent);
+        public delegate void OnHidEventDelegate(object aSender, SharpLibHid.HidEvent aHidEvent);
 
 		public MainForm()
 		{
@@ -86,7 +105,7 @@
 
 		}
 
-        public void HandleHidEventThreadSafe(object aSender, Hid.HidEvent aHidEvent)
+        public void HandleHidEventThreadSafe(object aSender, SharpLibHid.HidEvent aHidEvent)
         {
             if (aHidEvent.IsStray)
             {
@@ -128,12 +147,12 @@
                 //labelButtonName.Text = e.Button.ToString();
                 processed = true;
             }
-            else if (e.MceButton != Hid.Usage.WindowsMediaCenterRemoteControl.Null)
+            else if (e.MceButton != SharpLibHid.Usage.WindowsMediaCenterRemoteControl.Null)
             {
                 //Display MCE button name
                 //labelButtonName.Text = e.MceButton.ToString();
                 //Check if this is an HP extension
-                if (Enum.IsDefined(typeof(Hid.Usage.HpWindowsMediaCenterRemoteControl), (ushort)e.MceButton))
+                if (Enum.IsDefined(typeof(SharpLibHid.Usage.HpWindowsMediaCenterRemoteControl), (ushort)e.MceButton))
                 {
                     //Also display HP button name
                     //labelButtonName.Text += " / HP:" + ((Hid.UsageTables.HpWindowsMediaCenterRemoteControl)e.MceButton).ToString();
@@ -141,7 +160,7 @@
 
                 processed = true;                
             }
-            else if (e.ConsumerControl != Hid.Usage.ConsumerControl.Null)
+            else if (e.ConsumerControl != SharpLibHid.Usage.ConsumerControl.Null)
             {
                 //Display consumer control name
                 //labelButtonName.Text = e.ConsumerControl.ToString();
diff -r e8bb372ae58b -r 831ebeeecfdf Properties/AssemblyInfo.cs
--- a/Properties/AssemblyInfo.cs	Sun Mar 15 14:07:17 2015 +0100
+++ b/Properties/AssemblyInfo.cs	Sun Mar 15 14:39:21 2015 +0100
@@ -1,4 +1,23 @@
-using System.Reflection;
+//
+// Copyright (C) 2014-2015 Stéphane Lenclud.
+//
+// This file is part of SharpLibHid.
+//
+// SharpDisplayManager is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// SharpDisplayManager is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with SharpDisplayManager.  If not, see .
+//
+
+using System.Reflection;
 using System.Runtime.CompilerServices;
 using System.Runtime.InteropServices;
 
diff -r e8bb372ae58b -r 831ebeeecfdf RawInput.cs
--- a/RawInput.cs	Sun Mar 15 14:07:17 2015 +0100
+++ b/RawInput.cs	Sun Mar 15 14:39:21 2015 +0100
@@ -1,9 +1,27 @@
+//
+// Copyright (C) 2014-2015 Stéphane Lenclud.
+//
+// This file is part of SharpLibHid.
+//
+// SharpDisplayManager is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// SharpDisplayManager is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with SharpDisplayManager.  If not, see .
+//
+
 using System;
 using System.Runtime.InteropServices;
 using System.Diagnostics;
 using System.Windows.Forms;
 
-
 namespace Win32
 {
     /// 
@@ -178,7 +196,7 @@
             //For each our device add a node to our treeview
             foreach (RAWINPUTDEVICELIST device in ridList)
             {
-                Hid.HidDevice hidDevice=new Hid.HidDevice(device.hDevice);
+                SharpLibHid.HidDevice hidDevice=new SharpLibHid.HidDevice(device.hDevice);
 
                 TreeNode node = null;
                 if (hidDevice.Product != null && hidDevice.Product.Length > 1)
@@ -215,7 +233,7 @@
                 {
                     foreach (HIDP_VALUE_CAPS caps in hidDevice.InputValueCapabilities)
                     {
-                        string des = Hid.HidDevice.InputValueCapabilityDescription(caps);
+                        string des = SharpLibHid.HidDevice.InputValueCapabilityDescription(caps);
                         if (des != null)
                         {
                             node.Nodes.Add(des);
diff -r e8bb372ae58b -r 831ebeeecfdf Rebracer.xml
--- a/Rebracer.xml	Sun Mar 15 14:07:17 2015 +0100
+++ b/Rebracer.xml	Sun Mar 15 14:39:21 2015 +0100
@@ -106,13 +106,70 @@
         true
       
       
+        true
+        false
         false
+        true
+        true
+        true
+        true
         false
         true
+        true
         false
         true
+        true
         true
+        false
+        true
         false
+        false
+        true
+        false
+        1
+        true
+        0
+        true
+        true
+        0
+        0
+        true
+        true
+        false
+        0
+        0
+        0
+        1
+        false
+        true
+        false
+        true
+        true
+        2
+        2
+        2
+        false
+        false
+        true
+        true
+        false
+        false
+        true
+        false
+        false
+        false
+        false
+        false
+        false
+        false
+        false
+        false
+        false
+        false
+        true
+        false
+        true
+        true
       
     
   
diff -r e8bb372ae58b -r 831ebeeecfdf RemoteControlDevice.cs
--- a/RemoteControlDevice.cs	Sun Mar 15 14:07:17 2015 +0100
+++ b/RemoteControlDevice.cs	Sun Mar 15 14:39:21 2015 +0100
@@ -1,3 +1,22 @@
+//
+// Copyright (C) 2014-2015 Stéphane Lenclud.
+//
+// This file is part of SharpLibHid.
+//
+// SharpDisplayManager is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// SharpDisplayManager is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with SharpDisplayManager.  If not, see .
+//
+
 using System;
 using System.Windows.Forms;
 using System.Runtime.InteropServices;
@@ -5,7 +24,7 @@
 using System.Text;
 using Microsoft.Win32.SafeHandles;
 
-using Hid.Usage;
+using SharpLibHid.Usage;
 using Win32;
 
 
@@ -166,7 +185,7 @@
         /// 
         public delegate bool HidUsageHandler(ushort aUsage);
 
-        public Hid.HidHandler iHidHandler;
+        public SharpLibHid.HidHandler iHidHandler;
 
 
         //-------------------------------------------------------------
@@ -182,38 +201,38 @@
             RAWINPUTDEVICE[] rid = new RAWINPUTDEVICE[6];
 
             int i = 0;
-            rid[i].usUsagePage = (ushort)Hid.UsagePage.WindowsMediaCenterRemoteControl;
-            rid[i].usUsage = (ushort)Hid.UsageCollection.WindowsMediaCenter.WindowsMediaCenterRemoteControl;
+            rid[i].usUsagePage = (ushort)SharpLibHid.UsagePage.WindowsMediaCenterRemoteControl;
+            rid[i].usUsage = (ushort)SharpLibHid.UsageCollection.WindowsMediaCenter.WindowsMediaCenterRemoteControl;
             rid[i].dwFlags = Const.RIDEV_EXINPUTSINK;
             rid[i].hwndTarget = aHWND;
 
             i++;
-            rid[i].usUsagePage = (ushort)Hid.UsagePage.Consumer;
-            rid[i].usUsage = (ushort)Hid.UsageCollection.Consumer.ConsumerControl;
+            rid[i].usUsagePage = (ushort)SharpLibHid.UsagePage.Consumer;
+            rid[i].usUsage = (ushort)SharpLibHid.UsageCollection.Consumer.ConsumerControl;
             rid[i].dwFlags = Const.RIDEV_EXINPUTSINK;
             rid[i].hwndTarget = aHWND;
 
             i++;
-            rid[i].usUsagePage = (ushort)Hid.UsagePage.Consumer;
-            rid[i].usUsage = (ushort)Hid.UsageCollection.Consumer.Selection;
+            rid[i].usUsagePage = (ushort)SharpLibHid.UsagePage.Consumer;
+            rid[i].usUsage = (ushort)SharpLibHid.UsageCollection.Consumer.Selection;
             rid[i].dwFlags = Const.RIDEV_EXINPUTSINK;
             rid[i].hwndTarget = aHWND;
 
             i++;
-            rid[i].usUsagePage = (ushort)Hid.UsagePage.GenericDesktopControls;
-            rid[i].usUsage = (ushort)Hid.UsageCollection.GenericDesktop.SystemControl;
+            rid[i].usUsagePage = (ushort)SharpLibHid.UsagePage.GenericDesktopControls;
+            rid[i].usUsage = (ushort)SharpLibHid.UsageCollection.GenericDesktop.SystemControl;
             rid[i].dwFlags = Const.RIDEV_EXINPUTSINK;
             rid[i].hwndTarget = aHWND;
 
 			i++;
-			rid[i].usUsagePage = (ushort)Hid.UsagePage.GenericDesktopControls;
-			rid[i].usUsage = (ushort)Hid.UsageCollection.GenericDesktop.GamePad;
+			rid[i].usUsagePage = (ushort)SharpLibHid.UsagePage.GenericDesktopControls;
+			rid[i].usUsage = (ushort)SharpLibHid.UsageCollection.GenericDesktop.GamePad;
 			rid[i].dwFlags = Const.RIDEV_EXINPUTSINK;
 			rid[i].hwndTarget = aHWND;
 
             i++;
-            rid[i].usUsagePage = (ushort)Hid.UsagePage.GenericDesktopControls;
-            rid[i].usUsage = (ushort)Hid.UsageCollection.GenericDesktop.Keyboard;
+            rid[i].usUsagePage = (ushort)SharpLibHid.UsagePage.GenericDesktopControls;
+            rid[i].usUsage = (ushort)SharpLibHid.UsageCollection.GenericDesktop.Keyboard;
             //rid[i].dwFlags = Const.RIDEV_EXINPUTSINK;
             rid[i].hwndTarget = aHWND;
 
@@ -224,7 +243,7 @@
             //rid[i].hwndTarget = aHWND;
 
 
-            iHidHandler = new Hid.HidHandler(rid);
+            iHidHandler = new SharpLibHid.HidHandler(rid);
             if (!iHidHandler.IsRegistered)
             {
                 Debug.WriteLine("Failed to register raw input devices: " + Marshal.GetLastWin32Error().ToString());
@@ -395,17 +414,17 @@
         /// 
         /// 
         /// 
-        void HandleHidEvent(object aSender, Hid.HidEvent aHidEvent)
+        void HandleHidEvent(object aSender, SharpLibHid.HidEvent aHidEvent)
         {
             HidUsageHandler usagePageHandler = null;
 
             //Check if this an MCE remote HID message
-            if (aHidEvent.UsagePage == (ushort)Hid.UsagePage.WindowsMediaCenterRemoteControl && aHidEvent.UsageCollection == (ushort)Hid.UsageCollection.WindowsMediaCenter.WindowsMediaCenterRemoteControl)
+            if (aHidEvent.UsagePage == (ushort)SharpLibHid.UsagePage.WindowsMediaCenterRemoteControl && aHidEvent.UsageCollection == (ushort)SharpLibHid.UsageCollection.WindowsMediaCenter.WindowsMediaCenterRemoteControl)
             {
                 usagePageHandler = HidMceRemoteHandler;
             }
             //Check if this is a consumer control HID message
-            else if (aHidEvent.UsagePage == (ushort)Hid.UsagePage.Consumer && aHidEvent.UsageCollection == (ushort)Hid.UsageCollection.Consumer.ConsumerControl)
+            else if (aHidEvent.UsagePage == (ushort)SharpLibHid.UsagePage.Consumer && aHidEvent.UsageCollection == (ushort)SharpLibHid.UsageCollection.Consumer.ConsumerControl)
             {
                 usagePageHandler = HidConsumerDeviceHandler;
             }
diff -r e8bb372ae58b -r 831ebeeecfdf SharpLibHid.sln
--- a/SharpLibHid.sln	Sun Mar 15 14:07:17 2015 +0100
+++ b/SharpLibHid.sln	Sun Mar 15 14:39:21 2015 +0100
@@ -1,8 +1,6 @@
 
 Microsoft Visual Studio Solution File, Format Version 12.00
 # Visual Studio 2012
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "RemoteControlSample", "RemoteControlSample.csproj", "{F676C5E5-266C-439A-98C4-EF21CB9957F2}"
-EndProject
 Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{E70B5E73-7045-4EA7-968D-06BB68773DAB}"
 	ProjectSection(SolutionItems) = preProject
 		Rebracer.xml = Rebracer.xml
@@ -22,18 +20,6 @@
 		Release|x86 = Release|x86
 	EndGlobalSection
 	GlobalSection(ProjectConfigurationPlatforms) = postSolution
-		{F676C5E5-266C-439A-98C4-EF21CB9957F2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{F676C5E5-266C-439A-98C4-EF21CB9957F2}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{F676C5E5-266C-439A-98C4-EF21CB9957F2}.Debug|Mixed Platforms.ActiveCfg = Debug|x86
-		{F676C5E5-266C-439A-98C4-EF21CB9957F2}.Debug|Mixed Platforms.Build.0 = Debug|x86
-		{F676C5E5-266C-439A-98C4-EF21CB9957F2}.Debug|x86.ActiveCfg = Debug|x86
-		{F676C5E5-266C-439A-98C4-EF21CB9957F2}.Debug|x86.Build.0 = Debug|x86
-		{F676C5E5-266C-439A-98C4-EF21CB9957F2}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{F676C5E5-266C-439A-98C4-EF21CB9957F2}.Release|Any CPU.Build.0 = Release|Any CPU
-		{F676C5E5-266C-439A-98C4-EF21CB9957F2}.Release|Mixed Platforms.ActiveCfg = Release|x86
-		{F676C5E5-266C-439A-98C4-EF21CB9957F2}.Release|Mixed Platforms.Build.0 = Release|x86
-		{F676C5E5-266C-439A-98C4-EF21CB9957F2}.Release|x86.ActiveCfg = Release|x86
-		{F676C5E5-266C-439A-98C4-EF21CB9957F2}.Release|x86.Build.0 = Release|x86
 		{4F3F96E6-668A-488E-BA0C-ED249AFACE9E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{4F3F96E6-668A-488E-BA0C-ED249AFACE9E}.Debug|Any CPU.Build.0 = Debug|Any CPU
 		{4F3F96E6-668A-488E-BA0C-ED249AFACE9E}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
diff -r e8bb372ae58b -r 831ebeeecfdf Win32AppCommand.cs
--- a/Win32AppCommand.cs	Sun Mar 15 14:07:17 2015 +0100
+++ b/Win32AppCommand.cs	Sun Mar 15 14:39:21 2015 +0100
@@ -1,3 +1,22 @@
+//
+// Copyright (C) 2014-2015 Stéphane Lenclud.
+//
+// This file is part of SharpLibHid.
+//
+// SharpDisplayManager is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// SharpDisplayManager is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with SharpDisplayManager.  If not, see .
+//
+
 using System;
 using System.Runtime.InteropServices;
 
diff -r e8bb372ae58b -r 831ebeeecfdf Win32CreateFile.cs
--- a/Win32CreateFile.cs	Sun Mar 15 14:07:17 2015 +0100
+++ b/Win32CreateFile.cs	Sun Mar 15 14:39:21 2015 +0100
@@ -1,3 +1,22 @@
+//
+// Copyright (C) 2014-2015 Stéphane Lenclud.
+//
+// This file is part of SharpLibHid.
+//
+// SharpDisplayManager is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// SharpDisplayManager is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with SharpDisplayManager.  If not, see .
+//
+
 using System;
 using System.Runtime.InteropServices;
 using Microsoft.Win32.SafeHandles;
diff -r e8bb372ae58b -r 831ebeeecfdf Win32Hid.cs
--- a/Win32Hid.cs	Sun Mar 15 14:07:17 2015 +0100
+++ b/Win32Hid.cs	Sun Mar 15 14:39:21 2015 +0100
@@ -1,3 +1,22 @@
+//
+// Copyright (C) 2014-2015 Stéphane Lenclud.
+//
+// This file is part of SharpLibHid.
+//
+// SharpDisplayManager is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// SharpDisplayManager is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with SharpDisplayManager.  If not, see .
+//
+
 using System;
 using System.Runtime.InteropServices;
 using Microsoft.Win32.SafeHandles;
diff -r e8bb372ae58b -r 831ebeeecfdf Win32RawInput.cs
--- a/Win32RawInput.cs	Sun Mar 15 14:07:17 2015 +0100
+++ b/Win32RawInput.cs	Sun Mar 15 14:39:21 2015 +0100
@@ -1,3 +1,22 @@
+//
+// Copyright (C) 2014-2015 Stéphane Lenclud.
+//
+// This file is part of SharpLibHid.
+//
+// SharpDisplayManager is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// SharpDisplayManager is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with SharpDisplayManager.  If not, see .
+//
+
 using System;
 using System.Runtime.InteropServices;