private static void OnEffect(IntPtr data, IntPtr ptr) { int id = 0; int packetType = 0; int blockIndex = 0; var effect = new FFB_EFF_CONST(); //var msg = (FFB_DATA)Marshal.PtrToStructure(data, typeof(FFB_DATA)); var result = Ffb_h_DeviceID(data, ref id); result = Ffb_h_Type(data, ref packetType); result = Ffb_h_EBI(data, ref blockIndex); result = Ffb_h_Eff_Const(data, ref effect); System.Diagnostics.Debug.WriteLine("Device: {0} - Packet type: {1} - Block index: {2}", id, packetType, blockIndex); System.Diagnostics.Debug.WriteLine( "Effect --> EffectBlockIndex: {0}, EffectType: {1}, Duration: {2}, TrigerRpt: {3}, SamplePrd: {4}, Gain: {5}, TrigerBtn: {6}, Polar: {7}, DirectionOrDirX: {8}, DirectionOrDirX: {9}", effect.EffectBlockIndex, effect.EffectType, effect.Duration, effect.TrigerRpt, effect.SamplePrd, effect.Gain, effect.TrigerBtn, effect.Polar, effect.DirectionOrDirX, effect.DirectionOrDirX); //Will crash when this method returns }
public UInt32 Ffb_h_Eff_Const(IntPtr Packet, ref FFB_EFF_CONST Effect) { return(_Ffb_h_Eff_Const(Packet, ref Effect)); }
private static extern UInt32 _Ffb_h_Eff_Const(IntPtr Packet, ref FFB_EFF_CONST Effect);
public UInt32 Ffb_h_Eff_Const(IntPtr Packet, ref FFB_EFF_CONST Effect) { return _Ffb_h_Eff_Const(Packet, ref Effect); }
private extern static uint Ffb_h_Eff_Const(IntPtr data, ref FFB_EFF_CONST effect);