示例#1
0
    private Module _reader_module(TcpTlv.Tlv tlv)
    {
        Module       module;
        MemoryStream arr          = new MemoryStream();
        BinaryWriter binaryWriter = new BinaryWriter(arr);
        BinaryReader binaryReader = new BinaryReader(arr);

        binaryWriter.Write(tlv.Value);
        arr.Seek(0, SeekOrigin.Begin);
        byte[] mBt = binaryReader.ReadBytes(2);
        if (_tlvConn.Endian)
        {
            Array.Reverse(mBt);
        }
        ushort m = System.BitConverter.ToUInt16(mBt, 0);

        arr.Seek(2, SeekOrigin.Begin);
        byte[] aBt = binaryReader.ReadBytes(2);
        if (_tlvConn.Endian)
        {
            Array.Reverse(aBt);
        }
        ushort a = System.BitConverter.ToUInt16(aBt, 0);

        module.module = m;
        module.action = a;
        arr.Seek(4, SeekOrigin.Begin);
        byte[] valBt = binaryReader.ReadBytes((int)(tlv.Length - 4));
        tlv.Length -= 4;
        tlv.Value   = valBt;
        module.tlv  = tlv;
        return(module);
    }
示例#2
0
    private void readerHandlerP(TcpTlv.Tlv tlv)
    {
        Module module = _reader_module(tlv);

        ReaderModuleHandler(module);
    }