//public CInputManager( IntPtr hWnd )\r
public CInputManager()\r
{\r
- //this.directInput = new DirectInput();\r
- //this.timer = new CTimer( CTimer.E種別.MultiMedia );\r
-\r
this.list入力デバイス = new List<IInputDevice>( 10 );\r
this.listStrMidiDevices = new List<string>();\r
\r
- //this.list入力デバイス.Add( new CInputKeyboard( hWnd, directInput ) );\r
- //this.list入力デバイス.Add( new CInputMouse( hWnd, directInput ) );\r
- //foreach ( DeviceInstance instance in this.directInput.GetDevices( DeviceClass.GameController, DeviceEnumerationFlags.AttachedOnly ) )\r
- //{\r
- // this.list入力デバイス.Add( new CInputJoystick( hWnd, instance, directInput ) );\r
- //}\r
this.proc = new CWin32.MidiInProc( this.MidiInCallback );\r
nInputMidiDevices = CWin32.midiInGetNumDevs();\r
Trace.TraceInformation( "MIDI入力デバイス数: {0}", nInputMidiDevices );\r
\r
// メソッド\r
\r
- //public IInputDevice Joystick( int ID )\r
- //{\r
- // foreach ( IInputDevice device in this.list入力デバイス )\r
- // {\r
- // if ( ( device.e入力デバイス種別 == E入力デバイス種別.Joystick ) && ( device.ID == ID ) )\r
- // {\r
- // return device;\r
- // }\r
- // }\r
- // return null;\r
- //}\r
- //public IInputDevice Joystick( string GUID )\r
- //{\r
- // foreach ( IInputDevice device in this.list入力デバイス )\r
- // {\r
- // if ( ( device.e入力デバイス種別 == E入力デバイス種別.Joystick ) && device.GUID.Equals( GUID ) )\r
- // {\r
- // return device;\r
- // }\r
- // }\r
- // return null;\r
- //}\r
public IInputDevice MidiIn( int ID )\r
{\r
foreach ( IInputDevice device in this.list入力デバイス )\r
{\r
lock ( this.objMidiIn排他用 )\r
{\r
- // foreach( IInputDevice device in this.list入力デバイス )\r
for ( int i = this.list入力デバイス.Count - 1; i >= 0; i-- ) // #24016 2011.1.6 yyagi: change not to use "foreach" to avoid InvalidOperation exception by Remove().\r
{\r
IInputDevice device = this.list入力デバイス[ i ];\r
{\r
device.tポーリング( bWindowがアクティブ中, bバッファ入力を使用する );\r
}\r
- // catch ( DirectInputException ) // #24016 2011.1.6 yyagi: catch exception for unplugging USB joystick, and remove the device object from the polling items.\r
- catch ( Exception e ) // #24016 2011.1.6 yyagi: catch exception for unplugging USB joystick, and remove the device object from the polling items.\r
+ catch ( Exception ) // #24016 2011.1.6 yyagi: catch exception for unplugging USB joystick, and remove the device object from the polling items.\r
{\r
this.list入力デバイス.Remove( device );\r
device.Dispose();\r
\r
#region [ private ]\r
//-----------------\r
- //private DirectInput directInput;\r
- //private IInputDevice _Keyboard;\r
- //private IInputDevice _Mouse;\r
private bool bDisposed済み;\r
private List<uint> listHMIDIIN = new List<uint>( 8 );\r
private object objMidiIn排他用 = new object();\r
private CWin32.MidiInProc proc;\r
- //private CTimer timer;\r
\r
private void MidiInCallback( uint hMidiIn, uint wMsg, int dwInstance, int dwParam1, int dwParam2 )\r
{\r