Used to track everything we know about a particular EPS client. More...
#include "Tracker.hpp"
Public Member Functions | |
TrackerData (void) | |
Constructor. More... | |
std::string | as_debug (void) const |
Format the tracker data structure as a single text string. More... | |
bool | is_active (void) const |
Determine if an entry is "active" or "inactive". To be active, an entry must be available to send/receive packets. More... | |
bool | is_inactive (void) const |
Determine if an entry is "active" or "inactive". To be active, an entry must be available to send/receive packets. More... | |
bool | is_client (void) const |
Determine if an entry is a client or server entry. More... | |
bool | is_server (void) const |
Determine if an entry is a client or server entry. More... | |
bool | is_not_client (void) const |
Determine if an entry is a client or server entry. More... | |
bool | is_not_server (void) const |
Determine if an entry is a client or server entry. More... | |
Public Attributes | |
bool | active |
active connection (can be used to send/receive packets) More... | |
EPS::EMode | mode |
type of peer (client or server?) More... | |
UUID | uuid |
uuid for this EPS conduit More... | |
IPv4 | address_eps |
EPS address last assigned to this client More... | |
IPv4Set | other_addresses |
all other (non-EPS) addresses where this device can be reached More... | |
IPv4Set | mesh_addresses |
set of remaining possible addresses to try when connecting directly (populated from other_addresses, and addresses are removed one at a time until we find one that works) More... | |
EPS::TConnPtr | connection |
shared pointer to the direct peer tcp connection (can be empty) More... | |
EPS::TConnPtr | pending_mesh_connection |
used temporarily while establishing a mesh connection More... | |
std::chrono::system_clock::time_point | last_updated |
when the connection was last used (TBD) More... | |
std::chrono::system_clock::time_point | next_connection_attempt |
next time we can try to connect (for mesh networks) More... | |
std::string | hostname |
the hostname as reported by the peer (may not be unique!) More... | |
std::string | os_name |
the OS name/version as returned by EPS::get_os_name() More... | |
std::string | eps_version |
the EPS version string for this client More... | |
std::string | msg |
text (debug) message associated with this entry More... | |
time_t | eps_uptime |
timestamp: how long EPS has been running More... | |
time_t | system_uptime |
timestamp: how long this client has been running More... | |
time_t | disconnect_timestamp |
what time this device disconnected More... | |
Used to track everything we know about a particular EPS client.
|
inline |
Constructor.
std::string EPS::TrackerData::as_debug | ( | void | ) | const |
Format the tracker data structure as a single text string.
|
inline |
Determine if an entry is "active" or "inactive". To be active, an entry must be available to send/receive packets.
|
inline |
Determine if an entry is a client or server entry.
|
inline |
Determine if an entry is "active" or "inactive". To be active, an entry must be available to send/receive packets.
|
inline |
Determine if an entry is a client or server entry.
|
inline |
Determine if an entry is a client or server entry.
|
inline |
Determine if an entry is a client or server entry.
bool EPS::TrackerData::active |
active connection (can be used to send/receive packets)
IPv4 EPS::TrackerData::address_eps |
EPS address last assigned to this client
EPS::TConnPtr EPS::TrackerData::connection |
shared pointer to the direct peer tcp connection (can be empty)
time_t EPS::TrackerData::disconnect_timestamp |
what time this device disconnected
time_t EPS::TrackerData::eps_uptime |
timestamp: how long EPS has been running
At some point, this code will need to be cleaned up and we'll have to pick one standard for the entire codebase. It is not yet that day.
std::string EPS::TrackerData::eps_version |
the EPS version string for this client
std::string EPS::TrackerData::hostname |
the hostname as reported by the peer (may not be unique!)
std::chrono::system_clock::time_point EPS::TrackerData::last_updated |
when the connection was last used (TBD)
IPv4Set EPS::TrackerData::mesh_addresses |
set of remaining possible addresses to try when connecting directly (populated from other_addresses, and addresses are removed one at a time until we find one that works)
EPS::EMode EPS::TrackerData::mode |
type of peer (client or server?)
std::string EPS::TrackerData::msg |
text (debug) message associated with this entry
std::chrono::system_clock::time_point EPS::TrackerData::next_connection_attempt |
next time we can try to connect (for mesh networks)
std::string EPS::TrackerData::os_name |
the OS name/version as returned by EPS::get_os_name()
IPv4Set EPS::TrackerData::other_addresses |
all other (non-EPS) addresses where this device can be reached
EPS::TConnPtr EPS::TrackerData::pending_mesh_connection |
used temporarily while establishing a mesh connection
time_t EPS::TrackerData::system_uptime |
timestamp: how long this client has been running
UUID EPS::TrackerData::uuid |
uuid for this EPS conduit