2using System.Collections.Generic;
25 VendorCode = vendorCode ??
throw new ArgumentNullException(nameof(vendorCode));
26 if (
VendorCode.Length != 3)
throw new ArgumentOutOfRangeException(nameof(vendorCode));
28 Data = data ??
throw new ArgumentNullException(nameof(data));
39 public byte[]
Data {
get; }
53 var data =
new List<byte>
60 return data.ToArray();
69 data.Slice(0, 3).ToArray(),
70 data.Slice(3).ToArray()
77 var sb =
new StringBuilder();
78 sb.AppendLine($
"Vendor Code: {BitConverter.ToString(VendorCode.ToArray())}");
79 sb.AppendLine($
" Data: {BitConverter.ToString(Data.ToArray())}");
Contains standard Security Control Block data that can be used when building messages.
Base class representing a payload of a PD command message.
byte[] Data
Gets the manufacture specific data.
override string ToString()
byte[] VendorCode
Gets the vendor code.
ManufacturerSpecific(byte[] vendorCode, byte[] data)
Initializes a new instance of the ManufacturerSpecific class.
static ManufacturerSpecific ParseData(ReadOnlySpan< byte > data)
Parses the message payload bytes.
override byte[] BuildData()
override CommandType CommandType
override ReadOnlySpan< byte > SecurityControlBlock()