| 1234567891011121314151617181920212223242526272829303132333435363738394041 | using PlcSiemens.O;using PlcSiemens.Protocol.Common;using PlcSiemens.Protocol.Header;namespace PlcSiemens.Protocol.ListBlocks{    public class DataBlockInfoRequest : IBuildRequest    {        public HeaderPacket Header { get; set; }        public ParamsRequest Params { get; set; }        public DataBlockInfoDataRequest Data { get; set; }        public BlockType BlockType { get; set; }        public ushort DB { get; set; }        public DataBlockInfoRequest()        {            Header = new HeaderPacket();            Params = new ParamsRequest();            Data = new DataBlockInfoDataRequest();        }        public void Build()        {            Data.Build(BlockType, DB);            Params.Build(true, 0x00, GrType.GrBlocksInfo, PduFuncType.SFunBlkInfo);            Header.Build(PduType.Userdata, Params.PacketLength, Data.PacketLength);        }        public ByteBuffer GetBuffer()        {            ByteBuffer buffer = ByteBuffer.Allocate();            Header.GetByteBuffer(buffer);            Params.GetByteBuffer(buffer);            Data.GetByteBuffer(buffer);            return buffer;        }    }}
 |