store validate_Id with tx-Telegram

This commit is contained in:
MichaelDvP
2021-03-04 16:12:53 +01:00
parent 300fff1909
commit 7299be15df
4 changed files with 34 additions and 59 deletions

View File

@@ -271,8 +271,8 @@ class TxService : public EMSbus {
void start();
void send();
void add(const uint8_t operation, const uint8_t dest, const uint16_t type_id, const uint8_t offset, uint8_t * message_data, const uint8_t message_length, const bool front = false);
void add(const uint8_t operation, const uint8_t * data, const uint8_t length, const bool front = false);
void add(const uint8_t operation, const uint8_t dest, const uint16_t type_id, const uint8_t offset, uint8_t * message_data, const uint8_t message_length, const uint16_t validateid, const bool front = false);
void add(const uint8_t operation, const uint8_t * data, const uint8_t length, const uint16_t validateid, const bool front = false);
void read_request(const uint16_t type_id, const uint8_t dest, const uint8_t offset = 0);
void send_raw(const char * telegram_data);
void send_poll();
@@ -321,7 +321,7 @@ class TxService : public EMSbus {
if (telegram_fail_count_ == 0) {
return 100; // all good, 100%
}
return (100 - (((float)telegram_fail_count_ / telegram_read_count_ * 100)));
return (100 - (uint8_t)(((float)telegram_fail_count_ / telegram_read_count_ * 100)));
}
void increment_telegram_fail_count() {
@@ -344,12 +344,14 @@ class TxService : public EMSbus {
const uint16_t id_;
const std::shared_ptr<const Telegram> telegram_;
const bool retry_; // true if its a retry
const uint16_t validateid_;
~QueuedTxTelegram() = default;
QueuedTxTelegram(uint16_t id, std::shared_ptr<Telegram> && telegram, bool retry)
QueuedTxTelegram(uint16_t id, std::shared_ptr<Telegram> && telegram, bool retry, uint16_t validateid)
: id_(id)
, telegram_(std::move(telegram))
, retry_(retry) {
, retry_(retry)
, validateid_(validateid) {
}
};
@@ -391,8 +393,9 @@ class TxService : public EMSbus {
uint8_t tx_telegram_id_ = 0; // queue counter
void send_telegram(const QueuedTxTelegram & tx_telegram);
void send_telegram(const uint8_t * data, const uint8_t length);
// void send_telegram(const uint8_t * data, const uint8_t length);
};
} // namespace emsesp