version 4.0.0_alpha

in almost all methods removed timeouts in milliseconds, replaced to PISystemTime
PITimer rewrite, remove internal impl, now only thread implementation, API similar to PIThread
PITimer API no longer pass void*
PIPeer, PIConnection improved stability on reinit and exit
PISystemTime new methods
pisd now exit without hanging
This commit is contained in:
2024-07-30 14:18:02 +03:00
parent f07c9cbce8
commit 1c7fc39b6c
58 changed files with 677 additions and 1191 deletions

View File

@@ -75,13 +75,15 @@ public:
PIDiagnostics::State state() const;
//! Returns period of full disconnect in seconds and period of averaging frequency
float disconnectTimeout() const { return disconn_; }
PISystemTime disconnectTimeout() const { return disconn_; }
//! Returns period of full disconnect in seconds and period of averaging frequency
void setDisconnectTimeout(float s) { setProperty("disconnectTimeout", s); }
void setDisconnectTimeout(float s) DEPRECATEDM("use setDisconnectTimeout(PISystemTime)") {
setDisconnectTimeout(PISystemTime::fromSeconds(s));
}
//! Returns period of full disconnect and period of averaging frequency
void setDisconnectTimeout(PISystemTime tm) { setProperty("disconnectTimeout", tm.toSeconds()); }
void setDisconnectTimeout(PISystemTime tm) { setProperty("disconnectTimeout", tm); }
//! Returns connection quality
PIDiagnostics::Quality quality() const;
@@ -139,13 +141,13 @@ private:
friend bool operator!=(const PIDiagnostics::Entry & f, const PIDiagnostics::Entry & s);
friend bool operator<(const PIDiagnostics::Entry & f, const PIDiagnostics::Entry & s);
void tick(void *, int) override;
void tick(int) override;
Entry calcHistory(PIQueue<Entry> & hist, int & cnt);
void propertyChanged(const char *) override;
void changeDisconnectTimeout(float disct);
void changeDisconnectTimeout(PISystemTime disct);
PIQueue<Entry> history_rec, history_send;
float disconn_ = 0.f;
PISystemTime disconn_;
State cur_state;
mutable PIMutex mutex_state;
};