//* ────────────-_______________________* //* constructor & destructor ───────────────────────* //* -----------------------------------------------------------------------* /// <summary>コンストラクタ。</summary> /// /// <param name="input">レガシ ゲーム コントローラ入力制御・管理クラス。</param> /// <param name="idDevice">デバイスのインスタンスGUID。</param> /// <param name="hWnd">ウィンドウ ハンドル</param> /// <param name="buttonStateList">ボタンの入力状態一覧。</param> public CPrivateMembers( CInputLegacy input, Guid idDevice, IntPtr hWnd, List <SInputState> buttonStateList) { device = new Device(idDevice); this.input = input; this.hWnd = hWnd; this.buttonStateList = buttonStateList; capsReport = device.DeviceInformation.createCapsReport() + device.Caps.createCapsReport(); device.SetDataFormat(DeviceDataFormat.Joystick); }
//* -----------------------------------------------------------------------* /// <summary> /// レガシ ゲーム コントローラの自動認識・入力制御・管理クラスを生成します。 /// </summary> /// /// <returns> /// レガシ ゲーム コントローラの自動認識・入力制御・管理クラス。 /// </returns> private CInputCollection createLegacyInstance() { CInputCollection collection = CInputLegacy.createDetector(playerNumber); collection.changedChildCount += (sender, count) => { if (count > 0) { CInputLegacy input = ((CInputCollection)sender).getInstance <CInputLegacy>(); input.assignList = legacyAssign; input.useForAxis = legacyAxisAssign; } }; return(collection); }