Пример #1
0
 public static extern int GetRawInputData(
     IntPtr hRawInput,
     RawInputCommand command,
     out RawInputHeader pData,
     ref int pcbSize,
     int cbSizeHeader
     );
        public RawInputDigitizerData(RawInputHeader header, RawHid hid)
            : base(header, hid)
        {
            var digitizer = (RawInputDigitizer)Device;

            var contactButtonStates = ButtonSetStates.SelectMany(x => x).Where(x => x.Button.LinkUsageAndPage != digitizer.UsageAndPage).ToLookup(x => x.Button.LinkCollection);
            var contactValueStates  = ValueSetStates.SelectMany(x => x).Where(x => x.Value.LinkUsageAndPage != digitizer.UsageAndPage).ToLookup(x => x.Value.LinkCollection);
            var contactCount        = ValueSetStates.SelectMany(x => x).FirstOrDefault(x => x.Value.LinkUsageAndPage == digitizer.UsageAndPage && x.Value.UsageAndPage == RawInputDigitizer.UsageContactCount)?.CurrentValue ?? 1;

            Contacts = contactButtonStates.Select(buttonStates => new RawInputDigitizerContact(buttonStates, contactValueStates[buttonStates.Key]))
                       .Take(contactCount)
                       .ToArray();
        }
Пример #3
0
 protected RawInputHidData(RawInputHeader header, RawHid hid)
     : base(header) =>
Пример #4
0
 protected RawInputData(RawInputHeader header)
 {
     Header = header;
 }
 public RawInputMouseData(RawInputHeader header, RawMouse mouse)
     : base(header) =>
 public RawInputKeyboardData(RawInputHeader header, RawKeyboard keyboard)
     : base(header) =>
Пример #7
0
 public static extern uint GetRawInputData(IntPtr hRawInput, RawInputUiCommand uiCommand, out RawInputHeader pData, ref uint pcbSize, uint cbSizeHeader);