| 97 | } |
| 98 | |
| 99 | int FlowControlProtocol::readHdr(FlowControlProtocolHeader *hdr) { |
| 100 | uint8_t buffer[sizeof(FlowControlProtocolHeader)]; |
| 101 | |
| 102 | uint8_t *data = buffer; |
| 103 | |
| 104 | int status = readData(buffer, sizeof(FlowControlProtocolHeader)); |
| 105 | if (status <= 0) |
| 106 | return status; |
| 107 | |
| 108 | uint32_t value; |
| 109 | data = this->decode(data, value); |
| 110 | hdr->msgType = value; |
| 111 | |
| 112 | data = this->decode(data, value); |
| 113 | hdr->seqNumber = value; |
| 114 | |
| 115 | data = this->decode(data, value); |
| 116 | hdr->status = value; |
| 117 | |
| 118 | data = this->decode(data, value); |
| 119 | hdr->payloadLen = value; |
| 120 | |
| 121 | return sizeof(FlowControlProtocolHeader); |
| 122 | } |
| 123 | |
| 124 | void FlowControlProtocol::start() { |
| 125 | if (_reportInterval <= 0) |