30#include <boost/functional/hash.hpp>
47 return boost::hash_value (uint32_t{
id});
56 Activity::operator string()
const
73 case INVOKE:
return "INVOKE";
76 case NOTIFY:
return "NOTIFY";
77 case GATE:
return "GATE";
78 case POST:
return "POST";
79 case FEED:
return "FEED";
80 case HOOK:
return "HOOK";
81 case TICK:
return "TICK";
82 default: NOTREACHED (
"uncovered Activity verb diagnostics.");
128 NOTREACHED (
"uncovered Activity verb in activation function.");
A language framework to define and interconnect scheduler activity verbs.
Token or Atom with distinct identity.
basic constant internal time value.
Lumiera's internal time value datatype.
std::string showData() const
std::string showVerb() const
@ POST
post a message providing a chain of further time-bound Activities
@ NOTIFY
push a message to another Activity
@ HOOK
invoke an extension point through the activity::Hook interface
@ FEED
supply additional payload data for a preceding Activity
@ GATE
probe window + count-down; activate next Activity, else re-schedule
@ INVOKE
dispatch a JobFunctor into a worker thread
@ TICK
internal engine »heart beat« for internal maintenance hook(s)
@ WORKSTART
signal start of some processing and transition grooming mode ⟼ *work mode
@ WORKSTOP
correspondingly signal end of some processing
Notification notification
Marker for current (and obsolete) manifestations of a CalcStream processed by the Render-Engine.
virtual ~Hook()
this is an interface
ostream & showAdr(ostream &stream, void const *addr)
preconfigured format for pretty-printing of addresses
std::string showPtr(X *ptr=nullptr)
diagnostics helper for explicitly indicating pointers
std::string toString(TY const &val) noexcept
get some string representation of any object, reliably.
HashVal hash_value(ManifestationID const &id)
Vault-Layer implementation namespace root.
Service for coordination and dispatch of render activities.
Instant dead
alive while time < dead
int rest
alive while rest > 0
Marker types to indicate a literal string and a Symbol.