50 #ifndef CLOE_MODEL_HPP_ 51 #define CLOE_MODEL_HPP_ 70 const std::string& explanation()
const {
return Error::explanation(); }
72 ModelError explanation(
const std::string& explanation) && {
73 this->set_explanation(explanation);
74 return std::move(*
this);
77 template <
typename... Args>
78 ModelError explanation(
const char* format,
const Args&... args) && {
79 this->set_explanation(fmt::format(format, args...));
80 return std::move(*
this);
92 using ModelError::ModelError;
95 const std::string& explanation()
const {
return Error::explanation(); }
97 ModelError explanation(
const std::string& explanation) && {
98 this->set_explanation(explanation);
99 return std::move(*
this);
102 template <
typename... Args>
103 ModelError explanation(
const char* format,
const Args&... args) && {
104 this->set_explanation(fmt::format(format, args...));
105 return std::move(*
this);
115 using ModelError::ModelError;
118 const std::string& explanation()
const {
return Error::explanation(); }
120 ModelError explanation(
const std::string& explanation) && {
121 this->set_explanation(explanation);
122 return std::move(*
this);
125 template <
typename... Args>
126 ModelError explanation(
const char* format,
const Args&... args) && {
127 this->set_explanation(fmt::format(format, args...));
128 return std::move(*
this);
138 using ModelError::ModelError;
141 const std::string& explanation()
const {
return Error::explanation(); }
143 ModelError explanation(
const std::string& explanation) && {
144 this->set_explanation(explanation);
145 return std::move(*
this);
148 template <
typename... Args>
149 ModelError explanation(
const char* format,
const Args&... args) && {
150 this->set_explanation(fmt::format(format, args...));
151 return std::move(*
this);
225 using Entity::Entity;
233 virtual ~
Model() noexcept =
default;
243 virtual Duration resolution()
const;
318 virtual void start(
const Sync&) { operational_ =
true; }
373 virtual void stop(
const Sync&) { operational_ =
false; }
406 bool connected_{
false};
407 bool operational_{
false};
416 using Entity::Entity;
422 #endif // CLOE_MODEL_HPP_ virtual void disconnect()
Definition: model.hpp:296
Definition: confable.hpp:46
virtual bool is_connected() const
Definition: model.hpp:248
virtual void pause(const Sync &)
Definition: model.hpp:349
Definition: registrar.hpp:117
Definition: model.hpp:136
virtual void enroll(Registrar &)
Definition: model.hpp:306
Definition: coordinator.hpp:36
std::chrono::nanoseconds Duration
Definition: duration.hpp:45
virtual void abort()
Definition: model.hpp:403
Definition: entity.hpp:51
Definition: model.hpp:414
virtual bool is_operational() const
Definition: model.hpp:253
Definition: model.hpp:214
virtual void connect()
Definition: model.hpp:276
virtual void stop(const Sync &)
Definition: model.hpp:373
virtual void resume(const Sync &)
Definition: model.hpp:361
Definition: model.hpp:113
virtual void reset()
Definition: model.hpp:386
virtual void start(const Sync &)
Definition: model.hpp:318