UploadRequest.cs 922 B

1234567891011121314151617181920212223242526272829303132333435
  1. using PlcSiemens.O;
  2. using PlcSiemens.Protocol.Common;
  3. using PlcSiemens.Protocol.Header;
  4. namespace PlcSiemens.Protocol.Upload
  5. {
  6. public class UploadRequest : IBuildRequest
  7. {
  8. public HeaderPacket Header { get; set; }
  9. public UploadParamsRequest Params { get; set; }
  10. public byte UploadID { get; set; }
  11. public PduType PduType = PduType.PduUpload;
  12. public UploadRequest()
  13. {
  14. Header = new HeaderPacket();
  15. Params = new UploadParamsRequest();
  16. }
  17. public void Build()
  18. {
  19. Params.Build(UploadID, PduType);
  20. Header.Build(PduType.Request, Params.PacketLength, 0x00);
  21. }
  22. public ByteBuffer GetBuffer()
  23. {
  24. ByteBuffer buffer = ByteBuffer.Allocate();
  25. Header.GetByteBuffer(buffer);
  26. Params.GetByteBuffer(buffer);
  27. return buffer; ;
  28. }
  29. }
  30. }