You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 

47 lines
1.6 KiB

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace HidLibrary.Honeywell1902Series
{public class Report1902
{
private readonly byte[] _data;
private readonly HidDeviceData.ReadStatus _status;
public Report1902(HidReport hidReport)
{
_status = hidReport.ReadStatus;
ReportId = hidReport.ReportId;
Exists = hidReport.Exists;
if (hidReport.Data.Length > 0) Length = hidReport.Data[0];
if (hidReport.Data.Length > 1) AimSymbologyId0 = hidReport.Data[1];
if (hidReport.Data.Length > 2) AimSymbologyId1 = hidReport.Data[2];
if (hidReport.Data.Length > 3) AimSymbologyId2 = hidReport.Data[3];
if (hidReport.Data.Length > Length + 3)
{
Array.Resize(ref _data, Length);
Array.Copy(hidReport.Data, 4, _data, 0, Length);
}
if (hidReport.Data.Length > 60) HhpSymbologyId = hidReport.Data[60];
if (hidReport.Data.Length > 61) Reserved = hidReport.Data[61];
if (hidReport.Data.Length > 62) MoreData = hidReport.Data[62] == 1;
}
public HidDeviceData.ReadStatus ReadStatus { get { return _status; } }
public byte[] Data { get { return _data; } }
public bool Exists { get; private set; }
public byte ReportId { get; private set; }
public byte Length { get; private set; }
public byte AimSymbologyId0 { get; private set; }
public byte AimSymbologyId1 { get; private set; }
public byte AimSymbologyId2 { get; private set; }
public byte HhpSymbologyId { get; private set; }
public byte Reserved { get; private set; }
public bool MoreData { get; private set; }
}
}