diff --git a/ANX.Framework.sln b/ANX.Framework.sln
index 9ea24618..e1c14acd 100644
--- a/ANX.Framework.sln
+++ b/ANX.Framework.sln
@@ -109,6 +109,10 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Primitives", "Samples\Primi
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ANX.InputSystems.Windows.Recording", "InputSystems\ANX.InputSystems.Windows.Recording\ANX.InputSystems.Windows.Recording.csproj", "{DB88DDEB-7281-405D-8FCA-5681B6B2BD7A}"
EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ANX.InputSystem.OpenTK", "InputSystems\ANX.InputSystem.OpenTK\ANX.InputSystem.OpenTK.csproj", "{5CA3CDF5-4D2C-42AC-AD08-641BD3992B75}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ANX.SoundSystem.OpenAL", "SoundSystems\ANX.SoundSystem.OpenAL\ANX.SoundSystem.OpenAL.csproj", "{14EF49AB-6D3F-458D-9D5C-D120B86EDD7A}"
+EndProject
Global
GlobalSection(SubversionScc) = preSolution
Svn-Managed = True
@@ -361,6 +365,26 @@ Global
{DB88DDEB-7281-405D-8FCA-5681B6B2BD7A}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{DB88DDEB-7281-405D-8FCA-5681B6B2BD7A}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{DB88DDEB-7281-405D-8FCA-5681B6B2BD7A}.Release|x86.ActiveCfg = Release|Any CPU
+ {5CA3CDF5-4D2C-42AC-AD08-641BD3992B75}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {5CA3CDF5-4D2C-42AC-AD08-641BD3992B75}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {5CA3CDF5-4D2C-42AC-AD08-641BD3992B75}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+ {5CA3CDF5-4D2C-42AC-AD08-641BD3992B75}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
+ {5CA3CDF5-4D2C-42AC-AD08-641BD3992B75}.Debug|x86.ActiveCfg = Debug|Any CPU
+ {5CA3CDF5-4D2C-42AC-AD08-641BD3992B75}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {5CA3CDF5-4D2C-42AC-AD08-641BD3992B75}.Release|Any CPU.Build.0 = Release|Any CPU
+ {5CA3CDF5-4D2C-42AC-AD08-641BD3992B75}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+ {5CA3CDF5-4D2C-42AC-AD08-641BD3992B75}.Release|Mixed Platforms.Build.0 = Release|Any CPU
+ {5CA3CDF5-4D2C-42AC-AD08-641BD3992B75}.Release|x86.ActiveCfg = Release|Any CPU
+ {14EF49AB-6D3F-458D-9D5C-D120B86EDD7A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {14EF49AB-6D3F-458D-9D5C-D120B86EDD7A}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {14EF49AB-6D3F-458D-9D5C-D120B86EDD7A}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+ {14EF49AB-6D3F-458D-9D5C-D120B86EDD7A}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
+ {14EF49AB-6D3F-458D-9D5C-D120B86EDD7A}.Debug|x86.ActiveCfg = Debug|Any CPU
+ {14EF49AB-6D3F-458D-9D5C-D120B86EDD7A}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {14EF49AB-6D3F-458D-9D5C-D120B86EDD7A}.Release|Any CPU.Build.0 = Release|Any CPU
+ {14EF49AB-6D3F-458D-9D5C-D120B86EDD7A}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+ {14EF49AB-6D3F-458D-9D5C-D120B86EDD7A}.Release|Mixed Platforms.Build.0 = Release|Any CPU
+ {14EF49AB-6D3F-458D-9D5C-D120B86EDD7A}.Release|x86.ActiveCfg = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
@@ -386,7 +410,9 @@ Global
{E5D69E75-D77C-493F-BBDA-6F9E73B82549} = {7AD65E6B-2A48-437F-81D9-4CA9C9A85C64}
{60D08399-244F-46A3-91F1-4CFD26D961A3} = {7AD65E6B-2A48-437F-81D9-4CA9C9A85C64}
{DB88DDEB-7281-405D-8FCA-5681B6B2BD7A} = {7AD65E6B-2A48-437F-81D9-4CA9C9A85C64}
+ {5CA3CDF5-4D2C-42AC-AD08-641BD3992B75} = {7AD65E6B-2A48-437F-81D9-4CA9C9A85C64}
{6A582788-C4D2-410C-96CD-177F75712D65} = {5725DA44-4F5C-4E93-A957-AC5C85603EE9}
+ {14EF49AB-6D3F-458D-9D5C-D120B86EDD7A} = {5725DA44-4F5C-4E93-A957-AC5C85603EE9}
{CCB4679D-11AF-4EC6-AAA4-36619FCE70FA} = {60824BDB-AC8A-42ED-9B79-111FB44669FF}
{E4FFD875-95FC-48F2-8B6D-8483D0B71666} = {60824BDB-AC8A-42ED-9B79-111FB44669FF}
{BD648BB8-EF28-453C-B4F5-EE3C93EB4DAF} = {60824BDB-AC8A-42ED-9B79-111FB44669FF}
diff --git a/InputSystems/ANX.InputSystem.OpenTK/ANX.InputSystem.OpenTK.csproj b/InputSystems/ANX.InputSystem.OpenTK/ANX.InputSystem.OpenTK.csproj
new file mode 100644
index 00000000..c9c1d73e
--- /dev/null
+++ b/InputSystems/ANX.InputSystem.OpenTK/ANX.InputSystem.OpenTK.csproj
@@ -0,0 +1,86 @@
+
+
+
+ Debug
+ AnyCPU
+ 8.0.30703
+ 2.0
+ {5CA3CDF5-4D2C-42AC-AD08-641BD3992B75}
+ Library
+ Properties
+ ANX.InputSystem.OpenTK
+ ANX.InputSystem.OpenTK
+ v4.0
+ 512
+
+
+ true
+ full
+ false
+ ..\..\bin\Debug\
+ TRACE;DEBUG;XNAEXT
+ prompt
+ 4
+
+
+ pdbonly
+ true
+ ..\..\bin\Release\
+ TRACE;XNAEXT
+ prompt
+ 4
+
+
+
+ False
+ ..\..\lib\NLog\NLog.dll
+
+
+ False
+ ..\..\lib\OpenTK\OpenTK.dll
+
+
+ False
+ ..\..\lib\OpenTK\OpenTK.Compatibility.dll
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Metadata.resx
+ True
+ True
+
+
+
+
+
+
+ PublicResXFileCodeGenerator
+ Metadata.Designer.cs
+
+
+
+
+ {6899F0C9-70B9-4EB0-9DD3-E598D4BE3E35}
+ ANX.Framework
+
+
+
+
+
\ No newline at end of file
diff --git a/InputSystems/ANX.InputSystem.OpenTK/Creator.cs b/InputSystems/ANX.InputSystem.OpenTK/Creator.cs
new file mode 100644
index 00000000..99fc34c7
--- /dev/null
+++ b/InputSystems/ANX.InputSystem.OpenTK/Creator.cs
@@ -0,0 +1,130 @@
+#region Using Statements
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.IO;
+using System.Runtime.InteropServices;
+using ANX.Framework.NonXNA;
+using NLog;
+
+#endregion // Using Statements
+
+#region License
+
+//
+// This file is part of the ANX.Framework created by the "ANX.Framework developer group".
+//
+// This file is released under the Ms-PL license.
+//
+//
+//
+// Microsoft Public License (Ms-PL)
+//
+// This license governs use of the accompanying software. If you use the software, you accept this license.
+// If you do not accept the license, do not use the software.
+//
+// 1.Definitions
+// The terms "reproduce," "reproduction," "derivative works," and "distribution" have the same meaning
+// here as under U.S. copyright law.
+// A "contribution" is the original software, or any additions or changes to the software.
+// A "contributor" is any person that distributes its contribution under this license.
+// "Licensed patents" are a contributor's patent claims that read directly on its contribution.
+//
+// 2.Grant of Rights
+// (A) Copyright Grant- Subject to the terms of this license, including the license conditions and limitations
+// in section 3, each contributor grants you a non-exclusive, worldwide, royalty-free copyright license to
+// reproduce its contribution, prepare derivative works of its contribution, and distribute its contribution
+// or any derivative works that you create.
+// (B) Patent Grant- Subject to the terms of this license, including the license conditions and limitations in
+// section 3, each contributor grants you a non-exclusive, worldwide, royalty-free license under its licensed
+// patents to make, have made, use, sell, offer for sale, import, and/or otherwise dispose of its contribution
+// in the software or derivative works of the contribution in the software.
+//
+// 3.Conditions and Limitations
+// (A) No Trademark License- This license does not grant you rights to use any contributors' name, logo, or trademarks.
+// (B) If you bring a patent claim against any contributor over patents that you claim are infringed by the software, your
+// patent license from such contributor to the software ends automatically.
+// (C) If you distribute any portion of the software, you must retain all copyright, patent, trademark, and attribution
+// notices that are present in the software.
+// (D) If you distribute any portion of the software in source code form, you may do so only under this license by including
+// a complete copy of this license with your distribution. If you distribute any portion of the software in compiled or
+// object code form, you may only do so under a license that complies with this license.
+// (E) The software is licensed "as-is." You bear the risk of using it. The contributors give no express warranties, guarantees,
+// or conditions. You may have additional consumer rights under your local laws which this license cannot change. To the
+// extent permitted under your local laws, the contributors exclude the implied warranties of merchantability, fitness for a
+// particular purpose and non-infringement.
+
+#endregion // License
+
+namespace ANX.InputSystem.OpenTK
+{
+ public class Creator : IInputSystemCreator
+ {
+ private static Logger logger = LogManager.GetCurrentClassLogger();
+
+ public string Name
+ {
+ get
+ {
+ return "OpenTK";
+ }
+ }
+
+ public int Priority
+ {
+ get { return 100; }
+ }
+
+ public bool IsSupported
+ {
+ get
+ {
+ //TODO: this is just a very basic version of test for support
+ return AddInSystemFactory.Instance.OperatingSystem.Platform == PlatformID.Win32NT ||
+ AddInSystemFactory.Instance.OperatingSystem.Platform == PlatformID.Unix ||
+ AddInSystemFactory.Instance.OperatingSystem.Platform == PlatformID.MacOSX;
+ }
+ }
+
+ public void RegisterCreator(AddInSystemFactory factory)
+ {
+ logger.Debug("adding OpenTK InputSystem creator to creator collection of AddInSystemFactory");
+ factory.AddCreator(this);
+ }
+
+ public IGamePad GamePad
+ {
+ get
+ {
+ logger.Debug("returning a new OpenTK GamePad device");
+ return new GamePad();
+ }
+ }
+
+ public IMouse Mouse
+ {
+ get
+ {
+ logger.Debug("returning a new OpenTK Mouse device");
+ return new Mouse();
+ }
+ }
+
+ public IKeyboard Keyboard
+ {
+ get
+ {
+ logger.Debug("returning a new OpenTK Keyboard device");
+ return new Keyboard();
+ }
+ }
+
+#if XNAEXT
+ public IMotionSensingDevice MotionSensingDevice
+ {
+ get { return null; }
+ }
+#endif
+ }
+}
diff --git a/InputSystems/ANX.InputSystem.OpenTK/GamePad.cs b/InputSystems/ANX.InputSystem.OpenTK/GamePad.cs
new file mode 100644
index 00000000..41b9278f
--- /dev/null
+++ b/InputSystems/ANX.InputSystem.OpenTK/GamePad.cs
@@ -0,0 +1,81 @@
+#region Using Statements
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using ANX.Framework.NonXNA;
+
+#endregion // Using Statements
+
+#region License
+
+//
+// This file is part of the ANX.Framework created by the "ANX.Framework developer group".
+//
+// This file is released under the Ms-PL license.
+//
+//
+//
+// Microsoft Public License (Ms-PL)
+//
+// This license governs use of the accompanying software. If you use the software, you accept this license.
+// If you do not accept the license, do not use the software.
+//
+// 1.Definitions
+// The terms "reproduce," "reproduction," "derivative works," and "distribution" have the same meaning
+// here as under U.S. copyright law.
+// A "contribution" is the original software, or any additions or changes to the software.
+// A "contributor" is any person that distributes its contribution under this license.
+// "Licensed patents" are a contributor's patent claims that read directly on its contribution.
+//
+// 2.Grant of Rights
+// (A) Copyright Grant- Subject to the terms of this license, including the license conditions and limitations
+// in section 3, each contributor grants you a non-exclusive, worldwide, royalty-free copyright license to
+// reproduce its contribution, prepare derivative works of its contribution, and distribute its contribution
+// or any derivative works that you create.
+// (B) Patent Grant- Subject to the terms of this license, including the license conditions and limitations in
+// section 3, each contributor grants you a non-exclusive, worldwide, royalty-free license under its licensed
+// patents to make, have made, use, sell, offer for sale, import, and/or otherwise dispose of its contribution
+// in the software or derivative works of the contribution in the software.
+//
+// 3.Conditions and Limitations
+// (A) No Trademark License- This license does not grant you rights to use any contributors' name, logo, or trademarks.
+// (B) If you bring a patent claim against any contributor over patents that you claim are infringed by the software, your
+// patent license from such contributor to the software ends automatically.
+// (C) If you distribute any portion of the software, you must retain all copyright, patent, trademark, and attribution
+// notices that are present in the software.
+// (D) If you distribute any portion of the software in source code form, you may do so only under this license by including
+// a complete copy of this license with your distribution. If you distribute any portion of the software in compiled or
+// object code form, you may only do so under a license that complies with this license.
+// (E) The software is licensed "as-is." You bear the risk of using it. The contributors give no express warranties, guarantees,
+// or conditions. You may have additional consumer rights under your local laws which this license cannot change. To the
+// extent permitted under your local laws, the contributors exclude the implied warranties of merchantability, fitness for a
+// particular purpose and non-infringement.
+
+#endregion // License
+
+namespace ANX.InputSystem.OpenTK
+{
+ public class GamePad : IGamePad
+ {
+ public Framework.Input.GamePadCapabilities GetCapabilities(Framework.PlayerIndex playerIndex)
+ {
+ throw new NotImplementedException();
+ }
+
+ public Framework.Input.GamePadState GetState(Framework.PlayerIndex playerIndex, out bool isConnected, out int packetNumber)
+ {
+ throw new NotImplementedException();
+ }
+
+ public Framework.Input.GamePadState GetState(Framework.PlayerIndex playerIndex, Framework.Input.GamePadDeadZone deadZoneMode, out bool isConnected, out int packetNumber)
+ {
+ throw new NotImplementedException();
+ }
+
+ public bool SetVibration(Framework.PlayerIndex playerIndex, float leftMotor, float rightMotor)
+ {
+ throw new NotImplementedException();
+ }
+ }
+}
diff --git a/InputSystems/ANX.InputSystem.OpenTK/Keyboard.cs b/InputSystems/ANX.InputSystem.OpenTK/Keyboard.cs
new file mode 100644
index 00000000..1eda3445
--- /dev/null
+++ b/InputSystems/ANX.InputSystem.OpenTK/Keyboard.cs
@@ -0,0 +1,90 @@
+#region Using Statements
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using ANX.Framework.NonXNA;
+
+#endregion // Using Statements
+
+#region License
+
+//
+// This file is part of the ANX.Framework created by the "ANX.Framework developer group".
+//
+// This file is released under the Ms-PL license.
+//
+//
+//
+// Microsoft Public License (Ms-PL)
+//
+// This license governs use of the accompanying software. If you use the software, you accept this license.
+// If you do not accept the license, do not use the software.
+//
+// 1.Definitions
+// The terms "reproduce," "reproduction," "derivative works," and "distribution" have the same meaning
+// here as under U.S. copyright law.
+// A "contribution" is the original software, or any additions or changes to the software.
+// A "contributor" is any person that distributes its contribution under this license.
+// "Licensed patents" are a contributor's patent claims that read directly on its contribution.
+//
+// 2.Grant of Rights
+// (A) Copyright Grant- Subject to the terms of this license, including the license conditions and limitations
+// in section 3, each contributor grants you a non-exclusive, worldwide, royalty-free copyright license to
+// reproduce its contribution, prepare derivative works of its contribution, and distribute its contribution
+// or any derivative works that you create.
+// (B) Patent Grant- Subject to the terms of this license, including the license conditions and limitations in
+// section 3, each contributor grants you a non-exclusive, worldwide, royalty-free license under its licensed
+// patents to make, have made, use, sell, offer for sale, import, and/or otherwise dispose of its contribution
+// in the software or derivative works of the contribution in the software.
+//
+// 3.Conditions and Limitations
+// (A) No Trademark License- This license does not grant you rights to use any contributors' name, logo, or trademarks.
+// (B) If you bring a patent claim against any contributor over patents that you claim are infringed by the software, your
+// patent license from such contributor to the software ends automatically.
+// (C) If you distribute any portion of the software, you must retain all copyright, patent, trademark, and attribution
+// notices that are present in the software.
+// (D) If you distribute any portion of the software in source code form, you may do so only under this license by including
+// a complete copy of this license with your distribution. If you distribute any portion of the software in compiled or
+// object code form, you may only do so under a license that complies with this license.
+// (E) The software is licensed "as-is." You bear the risk of using it. The contributors give no express warranties, guarantees,
+// or conditions. You may have additional consumer rights under your local laws which this license cannot change. To the
+// extent permitted under your local laws, the contributors exclude the implied warranties of merchantability, fitness for a
+// particular purpose and non-infringement.
+
+#endregion // License
+
+namespace ANX.InputSystem.OpenTK
+{
+ public class Keyboard : IKeyboard
+ {
+ private IntPtr windowHandle;
+
+ public IntPtr WindowHandle
+ {
+ get
+ {
+ return this.windowHandle;
+ }
+ set
+ {
+ this.windowHandle = value;
+ }
+ }
+
+ public Framework.Input.KeyboardState GetState()
+ {
+ throw new NotImplementedException();
+ }
+
+ public Framework.Input.KeyboardState GetState(Framework.PlayerIndex playerIndex)
+ {
+ throw new NotImplementedException();
+ }
+
+ public void Dispose()
+ {
+ throw new NotImplementedException();
+ }
+ }
+}
diff --git a/InputSystems/ANX.InputSystem.OpenTK/Metadata.Designer.cs b/InputSystems/ANX.InputSystem.OpenTK/Metadata.Designer.cs
new file mode 100644
index 00000000..e1be905f
--- /dev/null
+++ b/InputSystems/ANX.InputSystem.OpenTK/Metadata.Designer.cs
@@ -0,0 +1,72 @@
+//------------------------------------------------------------------------------
+//
+// Dieser Code wurde von einem Tool generiert.
+// Laufzeitversion:4.0.30319.239
+//
+// Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn
+// der Code erneut generiert wird.
+//
+//------------------------------------------------------------------------------
+
+namespace ANX.InputSystem.OpenTK {
+ using System;
+
+
+ ///
+ /// Eine stark typisierte Ressourcenklasse zum Suchen von lokalisierten Zeichenfolgen usw.
+ ///
+ // Diese Klasse wurde von der StronglyTypedResourceBuilder automatisch generiert
+ // -Klasse über ein Tool wie ResGen oder Visual Studio automatisch generiert.
+ // Um einen Member hinzuzufügen oder zu entfernen, bearbeiten Sie die .ResX-Datei und führen dann ResGen
+ // mit der /str-Option erneut aus, oder Sie erstellen Ihr VS-Projekt neu.
+ [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+ [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
+ public class Metadata {
+
+ private static global::System.Resources.ResourceManager resourceMan;
+
+ private static global::System.Globalization.CultureInfo resourceCulture;
+
+ [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
+ internal Metadata() {
+ }
+
+ ///
+ /// Gibt die zwischengespeicherte ResourceManager-Instanz zurück, die von dieser Klasse verwendet wird.
+ ///
+ [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
+ public static global::System.Resources.ResourceManager ResourceManager {
+ get {
+ if (object.ReferenceEquals(resourceMan, null)) {
+ global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("ANX.InputSystem.OpenTK.Metadata", typeof(Metadata).Assembly);
+ resourceMan = temp;
+ }
+ return resourceMan;
+ }
+ }
+
+ ///
+ /// Überschreibt die CurrentUICulture-Eigenschaft des aktuellen Threads für alle
+ /// Ressourcenzuordnungen, die diese stark typisierte Ressourcenklasse verwenden.
+ ///
+ [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
+ public static global::System.Globalization.CultureInfo Culture {
+ get {
+ return resourceCulture;
+ }
+ set {
+ resourceCulture = value;
+ }
+ }
+
+ ///
+ /// Sucht eine lokalisierte Zeichenfolge, die Win32NT Unix MacOsX ähnelt.
+ ///
+ public static string SupportedPlatforms {
+ get {
+ return ResourceManager.GetString("SupportedPlatforms", resourceCulture);
+ }
+ }
+ }
+}
diff --git a/InputSystems/ANX.InputSystem.OpenTK/Metadata.resx b/InputSystems/ANX.InputSystem.OpenTK/Metadata.resx
new file mode 100644
index 00000000..8451d556
--- /dev/null
+++ b/InputSystems/ANX.InputSystem.OpenTK/Metadata.resx
@@ -0,0 +1,123 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 2.0
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ Win32NT Unix MacOsX
+
+
\ No newline at end of file
diff --git a/InputSystems/ANX.InputSystem.OpenTK/Mouse.cs b/InputSystems/ANX.InputSystem.OpenTK/Mouse.cs
new file mode 100644
index 00000000..86c90cc0
--- /dev/null
+++ b/InputSystems/ANX.InputSystem.OpenTK/Mouse.cs
@@ -0,0 +1,84 @@
+#region Using Statements
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using ANX.Framework.NonXNA;
+
+#endregion // Using Statements
+
+#region License
+
+//
+// This file is part of the ANX.Framework created by the "ANX.Framework developer group".
+//
+// This file is released under the Ms-PL license.
+//
+//
+//
+// Microsoft Public License (Ms-PL)
+//
+// This license governs use of the accompanying software. If you use the software, you accept this license.
+// If you do not accept the license, do not use the software.
+//
+// 1.Definitions
+// The terms "reproduce," "reproduction," "derivative works," and "distribution" have the same meaning
+// here as under U.S. copyright law.
+// A "contribution" is the original software, or any additions or changes to the software.
+// A "contributor" is any person that distributes its contribution under this license.
+// "Licensed patents" are a contributor's patent claims that read directly on its contribution.
+//
+// 2.Grant of Rights
+// (A) Copyright Grant- Subject to the terms of this license, including the license conditions and limitations
+// in section 3, each contributor grants you a non-exclusive, worldwide, royalty-free copyright license to
+// reproduce its contribution, prepare derivative works of its contribution, and distribute its contribution
+// or any derivative works that you create.
+// (B) Patent Grant- Subject to the terms of this license, including the license conditions and limitations in
+// section 3, each contributor grants you a non-exclusive, worldwide, royalty-free license under its licensed
+// patents to make, have made, use, sell, offer for sale, import, and/or otherwise dispose of its contribution
+// in the software or derivative works of the contribution in the software.
+//
+// 3.Conditions and Limitations
+// (A) No Trademark License- This license does not grant you rights to use any contributors' name, logo, or trademarks.
+// (B) If you bring a patent claim against any contributor over patents that you claim are infringed by the software, your
+// patent license from such contributor to the software ends automatically.
+// (C) If you distribute any portion of the software, you must retain all copyright, patent, trademark, and attribution
+// notices that are present in the software.
+// (D) If you distribute any portion of the software in source code form, you may do so only under this license by including
+// a complete copy of this license with your distribution. If you distribute any portion of the software in compiled or
+// object code form, you may only do so under a license that complies with this license.
+// (E) The software is licensed "as-is." You bear the risk of using it. The contributors give no express warranties, guarantees,
+// or conditions. You may have additional consumer rights under your local laws which this license cannot change. To the
+// extent permitted under your local laws, the contributors exclude the implied warranties of merchantability, fitness for a
+// particular purpose and non-infringement.
+
+#endregion // License
+
+namespace ANX.InputSystem.OpenTK
+{
+ public class Mouse : IMouse
+ {
+
+ public IntPtr WindowHandle
+ {
+ get
+ {
+ throw new NotImplementedException();
+ }
+ set
+ {
+ throw new NotImplementedException();
+ }
+ }
+
+ public Framework.Input.MouseState GetState()
+ {
+ throw new NotImplementedException();
+ }
+
+ public void SetPosition(int x, int y)
+ {
+ throw new NotImplementedException();
+ }
+ }
+}
diff --git a/InputSystems/ANX.InputSystem.OpenTK/Properties/AssemblyInfo.cs b/InputSystems/ANX.InputSystem.OpenTK/Properties/AssemblyInfo.cs
new file mode 100644
index 00000000..bdb16075
--- /dev/null
+++ b/InputSystems/ANX.InputSystem.OpenTK/Properties/AssemblyInfo.cs
@@ -0,0 +1,36 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+// Allgemeine Informationen über eine Assembly werden über die folgenden
+// Attribute gesteuert. Ändern Sie diese Attributwerte, um die Informationen zu ändern,
+// die mit einer Assembly verknüpft sind.
+[assembly: AssemblyTitle("ANX.InputSystem.OpenTK")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("ANX.Framework Team")]
+[assembly: AssemblyProduct("ANX.InputSystem.OpenTK")]
+[assembly: AssemblyCopyright("Copyright © ANX.Framework Team 2011")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+
+// Durch Festlegen von ComVisible auf "false" werden die Typen in dieser Assembly unsichtbar
+// für COM-Komponenten. Wenn Sie auf einen Typ in dieser Assembly von
+// COM zugreifen müssen, legen Sie das ComVisible-Attribut für diesen Typ auf "true" fest.
+[assembly: ComVisible(false)]
+
+// Die folgende GUID bestimmt die ID der Typbibliothek, wenn dieses Projekt für COM verfügbar gemacht wird
+[assembly: Guid("239b9c28-3493-4325-9f03-303b25b0efda")]
+
+// Versionsinformationen für eine Assembly bestehen aus den folgenden vier Werten:
+//
+// Hauptversion
+// Nebenversion
+// Buildnummer
+// Revision
+//
+// Sie können alle Werte angeben oder die standardmäßigen Build- und Revisionsnummern
+// übernehmen, indem Sie "*" eingeben:
+// [assembly: AssemblyVersion("1.0.*")]
+[assembly: AssemblyVersion("0.0.1.0")]
+[assembly: AssemblyFileVersion("0.0.1.0")]
diff --git a/InputSystems/ANX.InputSystems.Windows.Recording/ANX.InputSystems.Windows.Recording.csproj b/InputSystems/ANX.InputSystems.Windows.Recording/ANX.InputSystems.Windows.Recording.csproj
index 5d785f3c..caeb2abf 100644
--- a/InputSystems/ANX.InputSystems.Windows.Recording/ANX.InputSystems.Windows.Recording.csproj
+++ b/InputSystems/ANX.InputSystems.Windows.Recording/ANX.InputSystems.Windows.Recording.csproj
@@ -17,7 +17,7 @@
true
full
false
- bin\Debug\
+ ..\..\bin\Debug\
DEBUG;TRACE
prompt
4
@@ -25,7 +25,7 @@
pdbonly
true
- bin\Release\
+ ..\..\bin\Release\
TRACE
prompt
4
diff --git a/InputSystems/ANX.InputSystems.Windows.Recording/Properties/AssemblyInfo.cs b/InputSystems/ANX.InputSystems.Windows.Recording/Properties/AssemblyInfo.cs
index ea0db167..a6c23285 100644
--- a/InputSystems/ANX.InputSystems.Windows.Recording/Properties/AssemblyInfo.cs
+++ b/InputSystems/ANX.InputSystems.Windows.Recording/Properties/AssemblyInfo.cs
@@ -8,9 +8,9 @@ using System.Runtime.InteropServices;
[assembly: AssemblyTitle("ANX.InputSystems.Windows.Recording")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyCompany("")]
+[assembly: AssemblyCompany("ANX.Framework Team")]
[assembly: AssemblyProduct("ANX.InputSystems.Windows.Recording")]
-[assembly: AssemblyCopyright("Copyright © 2011")]
+[assembly: AssemblyCopyright("Copyright © ANX.Framework Team 2011")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
@@ -32,5 +32,5 @@ using System.Runtime.InteropServices;
// Sie können alle Werte angeben oder die standardmäßigen Build- und Revisionsnummern
// übernehmen, indem Sie "*" eingeben:
// [assembly: AssemblyVersion("1.0.*")]
-[assembly: AssemblyVersion("1.0.0.0")]
-[assembly: AssemblyFileVersion("1.0.0.0")]
+[assembly: AssemblyVersion("0.0.1.0")]
+[assembly: AssemblyFileVersion("0.0.1.0")]
diff --git a/Samples/WindowsGame/WindowsGame.csproj b/Samples/WindowsGame/WindowsGame.csproj
index 05c9ad97..5d26286b 100644
--- a/Samples/WindowsGame/WindowsGame.csproj
+++ b/Samples/WindowsGame/WindowsGame.csproj
@@ -99,6 +99,10 @@
{6899F0C9-70B9-4EB0-9DD3-E598D4BE3E35}
ANX.Framework
+
+ {5CA3CDF5-4D2C-42AC-AD08-641BD3992B75}
+ ANX.InputSystem.OpenTK
+
{E5D69E75-D77C-493F-BBDA-6F9E73B82549}
ANX.InputSystem.Windows.Kinect
@@ -107,6 +111,10 @@
{60D08399-244F-46A3-91F1-4CFD26D961A3}
ANX.InputSystem.Windows.XInput
+
+ {DB88DDEB-7281-405D-8FCA-5681B6B2BD7A}
+ ANX.InputSystems.Windows.Recording
+
{5BE49183-2F6F-4527-AC90-D816911FCF90}
ANX.Framework.Windows.DX10
@@ -119,6 +127,10 @@
{B30DE9C2-0926-46B6-8351-9AF276C472D5}
ANX.RenderSystem.Windows.DX11
+
+ {14EF49AB-6D3F-458D-9D5C-D120B86EDD7A}
+ ANX.SoundSystem.OpenAL
+
{6A582788-C4D2-410C-96CD-177F75712D65}
ANX.SoundSystem.Windows.XAudio
diff --git a/SoundSystems/ANX.SoundSystem.OpenAL/ANX.SoundSystem.OpenAL.csproj b/SoundSystems/ANX.SoundSystem.OpenAL/ANX.SoundSystem.OpenAL.csproj
new file mode 100644
index 00000000..70488076
--- /dev/null
+++ b/SoundSystems/ANX.SoundSystem.OpenAL/ANX.SoundSystem.OpenAL.csproj
@@ -0,0 +1,79 @@
+
+
+
+ Debug
+ AnyCPU
+ 8.0.30703
+ 2.0
+ {14EF49AB-6D3F-458D-9D5C-D120B86EDD7A}
+ Library
+ Properties
+ ANX.SoundSystem.OpenAL
+ ANX.SoundSystem.OpenAL
+ v4.0
+ 512
+
+
+ true
+ full
+ false
+ ..\..\bin\Debug\
+ DEBUG;TRACE
+ prompt
+ 4
+
+
+ pdbonly
+ true
+ ..\..\bin\Release\
+ TRACE
+ prompt
+ 4
+
+
+
+ False
+ ..\..\lib\OpenTK\OpenTK.dll
+
+
+ False
+ ..\..\lib\OpenTK\OpenTK.Compatibility.dll
+
+
+
+
+
+
+
+
+
+
+
+
+ Metadata.resx
+ True
+ True
+
+
+
+
+
+ {6899F0C9-70B9-4EB0-9DD3-E598D4BE3E35}
+ ANX.Framework
+
+
+
+
+ PublicResXFileCodeGenerator
+ Metadata.Designer.cs
+
+
+
+
+
\ No newline at end of file
diff --git a/SoundSystems/ANX.SoundSystem.OpenAL/Creator.cs b/SoundSystems/ANX.SoundSystem.OpenAL/Creator.cs
new file mode 100644
index 00000000..4d6a9ba8
--- /dev/null
+++ b/SoundSystems/ANX.SoundSystem.OpenAL/Creator.cs
@@ -0,0 +1,91 @@
+#region Using Statements
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.IO;
+using System.Runtime.InteropServices;
+using ANX.Framework.NonXNA;
+
+#endregion // Using Statements
+
+#region License
+
+//
+// This file is part of the ANX.Framework created by the "ANX.Framework developer group".
+//
+// This file is released under the Ms-PL license.
+//
+//
+//
+// Microsoft Public License (Ms-PL)
+//
+// This license governs use of the accompanying software. If you use the software, you accept this license.
+// If you do not accept the license, do not use the software.
+//
+// 1.Definitions
+// The terms "reproduce," "reproduction," "derivative works," and "distribution" have the same meaning
+// here as under U.S. copyright law.
+// A "contribution" is the original software, or any additions or changes to the software.
+// A "contributor" is any person that distributes its contribution under this license.
+// "Licensed patents" are a contributor's patent claims that read directly on its contribution.
+//
+// 2.Grant of Rights
+// (A) Copyright Grant- Subject to the terms of this license, including the license conditions and limitations
+// in section 3, each contributor grants you a non-exclusive, worldwide, royalty-free copyright license to
+// reproduce its contribution, prepare derivative works of its contribution, and distribute its contribution
+// or any derivative works that you create.
+// (B) Patent Grant- Subject to the terms of this license, including the license conditions and limitations in
+// section 3, each contributor grants you a non-exclusive, worldwide, royalty-free license under its licensed
+// patents to make, have made, use, sell, offer for sale, import, and/or otherwise dispose of its contribution
+// in the software or derivative works of the contribution in the software.
+//
+// 3.Conditions and Limitations
+// (A) No Trademark License- This license does not grant you rights to use any contributors' name, logo, or trademarks.
+// (B) If you bring a patent claim against any contributor over patents that you claim are infringed by the software, your
+// patent license from such contributor to the software ends automatically.
+// (C) If you distribute any portion of the software, you must retain all copyright, patent, trademark, and attribution
+// notices that are present in the software.
+// (D) If you distribute any portion of the software in source code form, you may do so only under this license by including
+// a complete copy of this license with your distribution. If you distribute any portion of the software in compiled or
+// object code form, you may only do so under a license that complies with this license.
+// (E) The software is licensed "as-is." You bear the risk of using it. The contributors give no express warranties, guarantees,
+// or conditions. You may have additional consumer rights under your local laws which this license cannot change. To the
+// extent permitted under your local laws, the contributors exclude the implied warranties of merchantability, fitness for a
+// particular purpose and non-infringement.
+
+#endregion // License
+
+namespace ANX.SoundSystem.OpenAL
+{
+ public class Creator : ISoundSystemCreator
+ {
+
+ public void RegisterCreator(AddInSystemFactory factory)
+ {
+ factory.AddCreator(this);
+ }
+
+ public string Name
+ {
+ get { return "OpenAL"; }
+ }
+
+ public int Priority
+ {
+ get { return 10; }
+ }
+
+ public bool IsSupported
+ {
+ get
+ {
+ //TODO: this is just a very basic version of test for support
+ return AddInSystemFactory.Instance.OperatingSystem.Platform == PlatformID.Win32NT ||
+ AddInSystemFactory.Instance.OperatingSystem.Platform == PlatformID.Unix ||
+ AddInSystemFactory.Instance.OperatingSystem.Platform == PlatformID.MacOSX;
+ }
+ }
+
+ }
+}
diff --git a/SoundSystems/ANX.SoundSystem.OpenAL/Metadata.Designer.cs b/SoundSystems/ANX.SoundSystem.OpenAL/Metadata.Designer.cs
new file mode 100644
index 00000000..7219202d
--- /dev/null
+++ b/SoundSystems/ANX.SoundSystem.OpenAL/Metadata.Designer.cs
@@ -0,0 +1,72 @@
+//------------------------------------------------------------------------------
+//
+// Dieser Code wurde von einem Tool generiert.
+// Laufzeitversion:4.0.30319.239
+//
+// Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn
+// der Code erneut generiert wird.
+//
+//------------------------------------------------------------------------------
+
+namespace ANX.SoundSystem.OpenAL {
+ using System;
+
+
+ ///
+ /// Eine stark typisierte Ressourcenklasse zum Suchen von lokalisierten Zeichenfolgen usw.
+ ///
+ // Diese Klasse wurde von der StronglyTypedResourceBuilder automatisch generiert
+ // -Klasse über ein Tool wie ResGen oder Visual Studio automatisch generiert.
+ // Um einen Member hinzuzufügen oder zu entfernen, bearbeiten Sie die .ResX-Datei und führen dann ResGen
+ // mit der /str-Option erneut aus, oder Sie erstellen Ihr VS-Projekt neu.
+ [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+ [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
+ public class Metadata {
+
+ private static global::System.Resources.ResourceManager resourceMan;
+
+ private static global::System.Globalization.CultureInfo resourceCulture;
+
+ [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
+ internal Metadata() {
+ }
+
+ ///
+ /// Gibt die zwischengespeicherte ResourceManager-Instanz zurück, die von dieser Klasse verwendet wird.
+ ///
+ [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
+ public static global::System.Resources.ResourceManager ResourceManager {
+ get {
+ if (object.ReferenceEquals(resourceMan, null)) {
+ global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("ANX.SoundSystem.OpenAL.Metadata", typeof(Metadata).Assembly);
+ resourceMan = temp;
+ }
+ return resourceMan;
+ }
+ }
+
+ ///
+ /// Überschreibt die CurrentUICulture-Eigenschaft des aktuellen Threads für alle
+ /// Ressourcenzuordnungen, die diese stark typisierte Ressourcenklasse verwenden.
+ ///
+ [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
+ public static global::System.Globalization.CultureInfo Culture {
+ get {
+ return resourceCulture;
+ }
+ set {
+ resourceCulture = value;
+ }
+ }
+
+ ///
+ /// Sucht eine lokalisierte Zeichenfolge, die Win32NT Unix MacOsX ähnelt.
+ ///
+ public static string SupportedPlatforms {
+ get {
+ return ResourceManager.GetString("SupportedPlatforms", resourceCulture);
+ }
+ }
+ }
+}
diff --git a/SoundSystems/ANX.SoundSystem.OpenAL/Metadata.resx b/SoundSystems/ANX.SoundSystem.OpenAL/Metadata.resx
new file mode 100644
index 00000000..8451d556
--- /dev/null
+++ b/SoundSystems/ANX.SoundSystem.OpenAL/Metadata.resx
@@ -0,0 +1,123 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 2.0
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ Win32NT Unix MacOsX
+
+
\ No newline at end of file
diff --git a/SoundSystems/ANX.SoundSystem.OpenAL/Properties/AssemblyInfo.cs b/SoundSystems/ANX.SoundSystem.OpenAL/Properties/AssemblyInfo.cs
new file mode 100644
index 00000000..20e687f5
--- /dev/null
+++ b/SoundSystems/ANX.SoundSystem.OpenAL/Properties/AssemblyInfo.cs
@@ -0,0 +1,36 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+// Allgemeine Informationen über eine Assembly werden über die folgenden
+// Attribute gesteuert. Ändern Sie diese Attributwerte, um die Informationen zu ändern,
+// die mit einer Assembly verknüpft sind.
+[assembly: AssemblyTitle("ANX.SoundSystem.OpenAL")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("ANX.Framework Team")]
+[assembly: AssemblyProduct("ANX.SoundSystem.OpenAL")]
+[assembly: AssemblyCopyright("Copyright © ANX.Framework Team 2011")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+
+// Durch Festlegen von ComVisible auf "false" werden die Typen in dieser Assembly unsichtbar
+// für COM-Komponenten. Wenn Sie auf einen Typ in dieser Assembly von
+// COM zugreifen müssen, legen Sie das ComVisible-Attribut für diesen Typ auf "true" fest.
+[assembly: ComVisible(false)]
+
+// Die folgende GUID bestimmt die ID der Typbibliothek, wenn dieses Projekt für COM verfügbar gemacht wird
+[assembly: Guid("4ba1bcba-d497-4e98-a36d-4f5c7d24b8f3")]
+
+// Versionsinformationen für eine Assembly bestehen aus den folgenden vier Werten:
+//
+// Hauptversion
+// Nebenversion
+// Buildnummer
+// Revision
+//
+// Sie können alle Werte angeben oder die standardmäßigen Build- und Revisionsnummern
+// übernehmen, indem Sie "*" eingeben:
+// [assembly: AssemblyVersion("1.0.*")]
+[assembly: AssemblyVersion("0.0.1.0")]
+[assembly: AssemblyFileVersion("0.0.1.0")]
diff --git a/build/ANX.Framework.build b/build/ANX.Framework.build
index 0230acfc..087b54e7 100644
--- a/build/ANX.Framework.build
+++ b/build/ANX.Framework.build
@@ -13,9 +13,15 @@
+
+
+
+
+
+
@@ -43,7 +49,10 @@
+
+
+
@@ -164,6 +173,34 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -195,6 +232,20 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+