private List<BacNetProperty> ReadProperties(byte[] apdu, int startIndex, uint objectId, ref int len)
{
List<BacNetProperty> res = new List<BacNetProperty>();
var openingTag = new BacNetTag(apdu, len, ref len);
if (openingTag.Length == 6 && openingTag.Number == 1)
{
BacNetTag metaTag = new BacNetTag(apdu, len, ref len);
while ((metaTag.Length != 7 || metaTag.LongTag) && metaTag.Number != 1)
{
var propertyId = new BacNetUInt(apdu, len, metaTag.Length, ref len);
BacNetProperty prop = new BacNetProperty { PropertyId = propertyId};
prop.Values = ReadValues(apdu, len, ref len);
res.Add(prop);
metaTag = new BacNetTag(apdu, len, ref len);
}
}
return res;
}