public override IExtensionObject ReadExtensionObject(IBinaryDecoder decoder)
 {
     throw new NotImplementedException();
 }
 public static byte[] Decode(this IBinaryDecoder decoder, byte[] encodedBytes)
 {
     return(decoder.Decode(encodedBytes, 0, encodedBytes.Length));
 }
 public override IDataValue ReadDataValue(IBinaryDecoder decoder)
 {
     throw new NotImplementedException();
 }
Example #4
0
 public IStatusCode ReadStatusCode(IBinaryDecoder decoder)
 {
     throw new NotImplementedException();
 }
Example #5
0
 public IVariant ReadVariant(IBinaryDecoder decoder)
 {
     throw new NotImplementedException();
 }
Example #6
0
 public ConsumerHeader(IBinaryDecoder reader) : base()
 {
     m_Reader = reader;
     ReadPacketHeader();
 }
Example #7
0
 public IDataValue ReadDataValue(IBinaryDecoder decoder)
 {
     throw new NotImplementedException();
 }
Example #8
0
 /// <summary>
 /// Reads the <see cref="DateTime" /> from UA binary encoded stream of bytes as <see cref="long" /> that contains the value and advances the stream position by 8 bytes.
 /// </summary>
 /// <param name="decoder">The decoder <see cref="IBinaryDecoder" /> to be used to read form the stream.</param>
 /// <returns>The <see cref="DateTime " /> decoded from the UA binary stream of bytes.</returns>
 public DateTime ReadDateTime(IBinaryDecoder decoder)
 {
     return(CommonDefinitions.GetUADateTime(decoder.ReadInt64()));
 }
Example #9
0
 protected BinarySoftwareDetectorBase(IEnumerable <IProductBinarySoftwareDetector> softwareDetectors, IBinaryDecoder binaryDecoder, IBootProvider bootProvider, ICameraProvider cameraProvider,
                                      ISoftwareHashProvider hashProvider, IOptions <SoftwareDetectorSettings> settings, ILogger logger)
 {
     Settings          = settings.Value;
     Logger            = logger;
     SoftwareDetectors = softwareDetectors;
     BinaryDecoder     = binaryDecoder;
     BootProvider      = bootProvider;
     CameraProvider    = cameraProvider;
     HashProvider      = hashProvider;
 }
Example #10
0
        private Array DecodeArray(IBinaryDecoder decoder, BuiltInType builtInType, bool arrayDimensionsPresents)
        {
            switch (builtInType)
            {
            case BuiltInType.Boolean:
                return(DecodeArray <bool>(decoder, decoder.ReadBoolean, arrayDimensionsPresents));

            case BuiltInType.SByte:
                return(DecodeArray <sbyte>(decoder, decoder.ReadSByte, arrayDimensionsPresents));

            case BuiltInType.Byte:
                return(DecodeArray <byte>(decoder, decoder.ReadByte, arrayDimensionsPresents));

            case BuiltInType.Int16:
                return(DecodeArray <short>(decoder, decoder.ReadInt16, arrayDimensionsPresents));

            case BuiltInType.UInt16:
                return(DecodeArray <ushort>(decoder, decoder.ReadUInt16, arrayDimensionsPresents));

            case BuiltInType.Int32:
            case BuiltInType.Enumeration:
                return(DecodeArray <int>(decoder, decoder.ReadInt32, arrayDimensionsPresents));

            case BuiltInType.UInt32:
                return(DecodeArray <uint>(decoder, decoder.ReadUInt32, arrayDimensionsPresents));

            case BuiltInType.Int64:
                return(DecodeArray <long>(decoder, decoder.ReadInt64, arrayDimensionsPresents));

            case BuiltInType.UInt64:
                return(DecodeArray <ulong>(decoder, decoder.ReadUInt64, arrayDimensionsPresents));

            case BuiltInType.Float:
                return(DecodeArray <float>(decoder, decoder.ReadSingle, arrayDimensionsPresents));

            case BuiltInType.Double:
                return(DecodeArray <double>(decoder, decoder.ReadDouble, arrayDimensionsPresents));

            case BuiltInType.String:
                return(DecodeArray <string>(decoder, () => ReadString(decoder), arrayDimensionsPresents));

            case BuiltInType.DateTime:
                return(DecodeArray <DateTime>(decoder, () => ReadDateTime(decoder), arrayDimensionsPresents));

            case BuiltInType.Guid:
                return(DecodeArray <Guid>(decoder, () => ReadGuid(decoder), arrayDimensionsPresents));

            case BuiltInType.ByteString:
                return(DecodeArray <byte[]>(decoder, () => ReadByteString(decoder), arrayDimensionsPresents));

            case BuiltInType.XmlElement:
                return(DecodeArray <XmlElement>(decoder, () => ReadXmlElement(decoder), arrayDimensionsPresents));

            case BuiltInType.NodeId:
                return(DecodeArray <INodeId>(decoder, () => ReadNodeId(decoder), arrayDimensionsPresents));

            case BuiltInType.ExpandedNodeId:
                return(DecodeArray <IExpandedNodeId>(decoder, () => ReadExpandedNodeId(decoder), arrayDimensionsPresents));

            case BuiltInType.StatusCode:
                return(DecodeArray <IStatusCode>(decoder, () => ReadStatusCode(decoder), arrayDimensionsPresents));

            case BuiltInType.QualifiedName:
                return(DecodeArray <IQualifiedName>(decoder, () => ReadQualifiedName(decoder), arrayDimensionsPresents));

            case BuiltInType.LocalizedText:
                return(DecodeArray <ILocalizedText>(decoder, () => ReadLocalizedText(decoder), arrayDimensionsPresents));

            case BuiltInType.ExtensionObject:
                return(DecodeArray <IExtensionObject>(decoder, () => ReadExtensionObject(decoder), arrayDimensionsPresents));

            case BuiltInType.DataValue:
                return(DecodeArray <IDataValue>(decoder, () => ReadDataValue(decoder), arrayDimensionsPresents));

            case BuiltInType.Variant:
                return(DecodeArray <IVariant>(decoder, () => ReadVariant(decoder), arrayDimensionsPresents));

            default:
                throw new ArgumentOutOfRangeException($"Cannot decode unknown type in Variant object (0x{(int)builtInType:X2}).");
            }
        }
Example #11
0
 /// <summary>
 /// Reads the <see cref="Guid" /> from UA Binary encoded as a 16-element byte array that contains the value and advances the input message position by 16 bytes.
 /// </summary>
 /// <param name="decoder">The decoder <see cref="IBinaryDecoder" /> to be used to read form the stream.</param>
 /// <returns>The <see cref="Guid" /> decoded from the input message.</returns>
 public Guid ReadGuid(IBinaryDecoder decoder)
 {
     return(CommonDefinitions.ReadGuid(decoder));
 }
Example #12
0
        //methods
        private Variant ReadValue(IBinaryDecoder encoder, BuiltInType encodingByte)
        {
            switch (encodingByte)
            {
            case BuiltInType.Boolean:
                return(new Variant(encoder.ReadBoolean(), encodingByte));

            case BuiltInType.SByte:
                return(new Variant(encoder.ReadSByte(), encodingByte));

            case BuiltInType.Byte:
                return(new Variant(encoder.ReadByte(), encodingByte));

            case BuiltInType.Int16:
                return(new Variant(encoder.ReadInt16(), encodingByte));

            case BuiltInType.UInt16:
                return(new Variant(encoder.ReadUInt16(), encodingByte));

            case BuiltInType.Int32:
            case BuiltInType.Enumeration:
                return(new Variant(encoder.ReadInt32(), encodingByte));

            case BuiltInType.UInt32:
                return(new Variant(encoder.ReadUInt32(), encodingByte));

            case BuiltInType.Int64:
                return(new Variant(encoder.ReadInt64(), encodingByte));

            case BuiltInType.UInt64:
                return(new Variant(encoder.ReadUInt64(), encodingByte));

            case BuiltInType.Float:
                return(new Variant(encoder.ReadSingle(), encodingByte));

            case BuiltInType.Double:
                return(new Variant(encoder.ReadDouble(), encodingByte));

            case BuiltInType.String:
                return(new Variant(ReadString(encoder), encodingByte));

            case BuiltInType.DateTime:
                return(new Variant(ReadDateTime(encoder), encodingByte));

            case BuiltInType.Guid:
                return(new Variant(ReadGuid(encoder), encodingByte));

            case BuiltInType.ByteString:
                return(new Variant(ReadByteString(encoder), encodingByte));

            case BuiltInType.XmlElement:
                return(new Variant(ReadXmlElement(encoder), encodingByte));

            case BuiltInType.NodeId:
                return(new Variant(ReadNodeId(encoder), encodingByte));

            case BuiltInType.ExpandedNodeId:
                return(new Variant(ReadExpandedNodeId(encoder), encodingByte));

            case BuiltInType.StatusCode:
                return(new Variant(ReadStatusCode(encoder), encodingByte));

            case BuiltInType.QualifiedName:
                return(new Variant(ReadQualifiedName(encoder), encodingByte));

            case BuiltInType.LocalizedText:
                return(new Variant(ReadLocalizedText(encoder), encodingByte));

            case BuiltInType.ExtensionObject:
                return(new Variant(ReadExtensionObject(encoder), encodingByte));

            case BuiltInType.DataValue:
                return(new Variant(ReadDataValue(encoder), encodingByte));

            default:
                throw new ArgumentOutOfRangeException($"Cannot decode unknown type in Variant object (0x{encodingByte:X}).");
            }
        }
Example #13
0
 /// <summary>
 /// If implemented by a derived class reads an instance of <see cref="IStatusCode" /> from UA Binary encoded stream.
 /// </summary>
 /// <param name="decoder">The decoder <see cref="IBinaryDecoder" /> to be used to read form the stream.</param>
 /// <returns>The <see cref="IStatusCode" /> decoded from the UA binary stream of bytes.</returns>
 public abstract IStatusCode ReadStatusCode(IBinaryDecoder decoder);
Example #14
0
 /// <summary>
 /// If implemented by a derived class reads an instance of <see cref="XmlElement" /> from UA Binary encoded stream.
 /// </summary>
 /// <param name="decoder">The decoder <see cref="IBinaryDecoder" /> to be used to read form the stream.</param>
 /// <returns>The <see cref="XmlElement" /> decoded from the UA binary stream of bytes.</returns>
 public abstract XmlElement ReadXmlElement(IBinaryDecoder decoder);
 public override INodeId ReadNodeId(IBinaryDecoder decoder)
 {
     throw new NotImplementedException();
 }
Example #16
0
 /// <summary>
 /// Gets the consumer message header.
 /// </summary>
 /// <param name="reader">The reader <see cref="IBinaryDecoder" /> used to read the header data from the message.</param>
 /// <returns>MessageHeader.</returns>
 internal static MessageHeader GetConsumerMessageHeader(IBinaryDecoder reader)
 {
     return new ConsumerMessageHeader(reader);
 }
 public override IStatusCode ReadStatusCode(IBinaryDecoder decoder)
 {
     throw new NotImplementedException();
 }
Example #18
0
 public ConsumerMessageHeader(IBinaryDecoder reader)
 {
     m_reader = reader;
 }
Example #19
0
 public Array ReadArray <type>(IBinaryDecoder decoder, Func <type> readValue, bool arrayDimensionsPresents)
 {
     throw new NotImplementedException();
 }
 public KnownPsBinarySoftwareDetector(IEnumerable <IProductBinarySoftwareDetector> softwareDetectors, IBinaryDecoder binaryDecoder, IBootProvider bootProvider, ICameraProvider cameraProvider, ISoftwareHashProvider hashProvider, IOptions <SoftwareDetectorSettings> settings, ILoggerFactory loggerFactory)
     : base(softwareDetectors, binaryDecoder, bootProvider, cameraProvider, hashProvider, settings, loggerFactory.CreateLogger <KnownPsBinarySoftwareDetector>())
 {
     Offsets = bootProvider.GetOffsets(CategoryName);
 }
Example #21
0
 /// <summary>
 /// Gets the consumer packet header.
 /// </summary>
 /// <param name="decoder">The reader.</param>
 /// <returns>New instance of the <see cref="PacketHeader"/>.</returns>
 public static PacketHeader GetConsumerPacketHeader(IBinaryDecoder decoder)
 {
     return new ConsumerHeader(decoder);
 }
Example #22
0
 public PsHashSoftwareDetector(IEnumerable <IProductBinarySoftwareDetector> softwareDetectors, IBinaryDecoder binaryDecoder, IBootProvider bootProvider, ICameraProvider cameraProvider, ISoftwareHashProvider hashProvider, IOptions <SoftwareDetectorSettings> settings, ILoggerFactory loggerFactory)
     : base(softwareDetectors, binaryDecoder, bootProvider, cameraProvider, hashProvider, settings, loggerFactory.CreateLogger <PsHashSoftwareDetector>())
 {
 }
Example #23
0
 public string ReadString(IBinaryDecoder decoder)
 {
     throw new NotImplementedException();
 }
Example #24
0
 /// <summary>
 /// If implemented by a derived class reads an instance of <see cref="UAOOI.Networking.SemanticData.Encoding.IExpandedNodeId" /> from UA Binary encoded stream.
 /// </summary>
 /// <param name="decoder">The decoder <see cref="UAOOI.Networking.SemanticData.Encoding.IBinaryDecoder" /> to be used to read form the stream.</param>
 /// <returns>The <see cref="UAOOI.Networking.SemanticData.Encoding.IExpandedNodeId" /> decoded from the UA binary stream of bytes.</returns>
 /// <exception cref="NotImplementedException"></exception>
 public override IExpandedNodeId ReadExpandedNodeId(IBinaryDecoder decoder)
 {
     throw new NotImplementedException();
 }
Example #25
0
 public XmlElement ReadXmlElement(IBinaryDecoder decoder)
 {
     throw new NotImplementedException();
 }
Example #26
0
 public ConsumerMessageHeader(IBinaryDecoder reader)
 {
     m_reader = reader;
 }
 public static byte[] Decode(this IBinaryDecoder decoder, byte[] encodedBytes, int startIndex)
 {
     return(decoder.Decode(encodedBytes, startIndex, encodedBytes.Length - startIndex));
 }
Example #28
0
 /// <summary>
 /// Gets the consumer message header.
 /// </summary>
 /// <param name="reader">The reader <see cref="IBinaryDecoder" /> used to read the header data from the message.</param>
 /// <returns>MessageHeader.</returns>
 internal static MessageHeader GetConsumerMessageHeader(IBinaryDecoder reader)
 {
     return(new ConsumerMessageHeader(reader));
 }
 public override IDiagnosticInfo ReadDiagnosticInfo(IBinaryDecoder decoder)
 {
     throw new NotImplementedException();
 }
Example #30
0
 public IDiagnosticInfo ReadDiagnosticInfo(IBinaryDecoder decoder)
 {
     throw new NotImplementedException();
 }
 public override ILocalizedText ReadLocalizedText(IBinaryDecoder decoder)
 {
     throw new NotImplementedException();
 }
Example #32
0
 public IExtensionObject ReadExtensionObject(IBinaryDecoder decoder)
 {
     throw new NotImplementedException();
 }
 public override IQualifiedName ReadQualifiedName(IBinaryDecoder decoder)
 {
     throw new NotImplementedException();
 }
Example #34
0
 public Guid ReadGuid(IBinaryDecoder decoder)
 {
     throw new NotImplementedException();
 }
 public override XmlElement ReadXmlElement(IBinaryDecoder decoder)
 {
     throw new NotImplementedException();
 }
Example #36
0
 public ILocalizedText ReadLocalizedText(IBinaryDecoder decoder)
 {
     throw new NotImplementedException();
 }
Example #37
0
 /// <summary>
 /// Gets the consumer packet header.
 /// </summary>
 /// <param name="decoder">The reader.</param>
 /// <returns>New instance of the <see cref="PacketHeader"/>.</returns>
 public static PacketHeader GetConsumerPacketHeader(IBinaryDecoder decoder)
 {
     return(new ConsumerHeader(decoder));
 }
Example #38
0
 public INodeId ReadNodeId(IBinaryDecoder decoder)
 {
     throw new NotImplementedException();
 }
Example #39
0
 public byte[] ReadByteString(IBinaryDecoder decoder)
 {
     throw new NotImplementedException();
 }
Example #40
0
 public IQualifiedName ReadQualifiedName(IBinaryDecoder decoder)
 {
     throw new NotImplementedException();
 }
Example #41
0
 public DateTime ReadDateTime(IBinaryDecoder decoder)
 {
     throw new NotImplementedException();
 }
Example #42
0
 public ConsumerHeader(IBinaryDecoder reader)
     : base()
 {
     m_Reader = reader;
     ReadPacketHeader();
 }