#ifndef ISTEAMCONTROLLER002_H #define ISTEAMCONTROLLER002_H #ifdef STEAM_WIN32 #pragma once #endif class ISteamController002 { public: // // Native controller support API // // Must call init and shutdown when starting/ending use of the interface virtual bool Init() = 0; virtual bool Shutdown() = 0; // Pump callback/callresult events, SteamAPI_RunCallbacks will do this for you, // normally never need to call directly. virtual void RunFrame() = 0; virtual int GetConnectedControllers( uint64 * ) = 0; // Trigger a haptic pulse on the controller virtual void TriggerHapticPulse( uint32 unControllerIndex, ESteamControllerPad eTargetPad, unsigned short usDurationMicroSec ) = 0; virtual unknown_ret ActivateMode( uint64, int32 ) = 0; virtual int32 GetJoystickForHandle( uint64 ) = 0; virtual uint64 GetHandleForJoystick( int32 ) = 0; virtual unknown_ret GetModeAnalogOutputData( uint64, int32 ) = 0; }; #endif //ISTEAMCONTROLLER002_H