public static ControllerId GetIndexFromNpadIdType(NpadIdType npadIdType) { switch (npadIdType) { case NpadIdType.Player1: return(ControllerId.ControllerPlayer1); case NpadIdType.Player2: return(ControllerId.ControllerPlayer2); case NpadIdType.Player3: return(ControllerId.ControllerPlayer3); case NpadIdType.Player4: return(ControllerId.ControllerPlayer4); case NpadIdType.Player5: return(ControllerId.ControllerPlayer5); case NpadIdType.Player6: return(ControllerId.ControllerPlayer6); case NpadIdType.Player7: return(ControllerId.ControllerPlayer7); case NpadIdType.Player8: return(ControllerId.ControllerPlayer8); case NpadIdType.Handheld: return(ControllerId.ControllerHandheld); case NpadIdType.Unknown: return(ControllerId.ControllerUnknown); default: throw new ArgumentOutOfRangeException(nameof(npadIdType)); } }
private ResultCode GetAppletFooterUiTypeImpl(ServiceCtx context, out AppletFooterUiType appletFooterUiType) { NpadIdType npadIdType = (NpadIdType)context.RequestData.ReadUInt32(); PlayerIndex playerIndex = HidUtils.GetIndexFromNpadIdType(npadIdType); appletFooterUiType = context.Device.Hid.SharedMemory.Npads[(int)playerIndex].InternalState.AppletFooterUiType; return(ResultCode.Success); }
// GetNpadIrCameraHandle(u32) -> nn::irsensor::IrCameraHandle public ResultCode GetNpadIrCameraHandle(ServiceCtx context) { NpadIdType npadIdType = (NpadIdType)context.RequestData.ReadUInt32(); if (npadIdType > NpadIdType.Player8 && npadIdType != NpadIdType.Unknown && npadIdType != NpadIdType.Handheld) { return(ResultCode.NpadIdOutOfRange); } ControllerId irCameraHandle = HidUtils.GetIndexFromNpadIdType(npadIdType); context.ResponseData.Write((int)irCameraHandle); // NOTE: If the irCameraHandle pointer is null this error is returned, Doesn't occur in our case. // return ResultCode.HandlePointerIsNull; return(ResultCode.Success); }
// GetNpadIrCameraHandle(u32) -> nn::irsensor::IrCameraHandle public long GetNpadIrCameraHandle(ServiceCtx context) { NpadIdType npadIdType = (NpadIdType)context.RequestData.ReadUInt32(); if (npadIdType > NpadIdType.Player8 && npadIdType != NpadIdType.Unknown && npadIdType != NpadIdType.Handheld) { return(ErrorCode.MakeError(ErrorModule.Irsensor, IrsError.NpadIdOutOfRange)); } HidControllerId irCameraHandle = HidUtils.GetIndexFromNpadIdType(npadIdType); context.ResponseData.Write((int)irCameraHandle); // NOTE: If the irCameraHandle pointer is null this error is returned, Doesn't occur in our case. // return ErrorCode.MakeError(ErrorModule.Irsensor, IrsError.HandlePointerIsNull); return(0); }
public static PlayerIndex GetIndexFromNpadIdType(NpadIdType npadIdType) => npadIdType switch {