stasher::heartbeat
's
template parameter defines the class that holds each instance's metadata:
typedef stasher::heartbeat<std::string, std::string> heartbeat;
stasher::heartbeat
takes two template parameters:
a class that identifies each instance of an application, and a class
that defines each instance's status. In this example, both are a
std::string
. Both classes can be
any class that can be serialized by LIBCXX.
Depending on other usage of those classes, they may also need to
support stringability using LIBCXX's x::tostring
().
The application ID class must also implement strict weak ordering,
using operator <
(),
and possibly other kinds of ordering operators.
The application heartbeat is, essentially, a
std::map<
.
Additionally, the status class can be a application_id_class
,status_class
>void
.
This specifies no metadata, and stasher::heartbeat
just posts periodic updates without
any associated status metadata.