00001 /************************************************************************************ 00002 00003 Filename : Linux_Gamepad.h 00004 Content : Linux implementation of Gamepad functionality. 00005 Created : May 6, 2013 00006 Authors : Lee Cooper 00007 00008 Copyright : Copyright 2013 Oculus VR, Inc. All Rights reserved. 00009 00010 Licensed under the Apache License, Version 2.0 (the "License"); 00011 you may not use this file except in compliance with the License. 00012 You may obtain a copy of the License at 00013 00014 http://www.apache.org/licenses/LICENSE-2.0 00015 00016 Unless required by applicable law or agreed to in writing, software 00017 distributed under the License is distributed on an "AS IS" BASIS, 00018 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 00019 See the License for the specific language governing permissions and 00020 limitations under the License. 00021 00022 ************************************************************************************/ 00023 00024 #ifndef OVR_Linux_Gamepad_h 00025 #define OVR_Linux_Gamepad_h 00026 00027 #include "Gamepad.h" 00028 00029 namespace OVR { namespace Platform { namespace Linux { 00030 00031 class GamepadManager : public Platform::GamepadManager 00032 { 00033 public: 00034 GamepadManager(); 00035 ~GamepadManager(); 00036 00037 virtual UInt32 GetGamepadCount(); 00038 virtual bool GetGamepadState(UInt32 index, GamepadState* pState); 00039 00040 private: 00041 // Dynamically ink to XInput to simplify projects. 00042 //HMODULE hXInputModule; 00043 //typedef DWORD (WINAPI *PFn_XInputGetState)(DWORD dwUserIndex, XINPUT_STATE* pState); 00044 //PFn_XInputGetState pXInputGetState; 00045 00046 //UInt32 LastPadPacketNo; 00047 }; 00048 00049 }}} 00050 00051 #endif // OVR_Linux_Gamepad_h