40 #ifndef SRC_VAULT_GEAR_ENGINE_OBSERVER_H_ 41 #define SRC_VAULT_GEAR_ENGINE_OBSERVER_H_ 71 static size_t constexpr RAW_SIZ = 3;
72 using Storage = std::array<int64_t, RAW_SIZ>;
77 static_assert (
sizeof(DAT) <= RAW_SIZ *
sizeof(int64_t));
83 Payload (DAT
const& d) : data{d} { }
84 Payload (DAT && dr) : data{move(dr)} { }
88 DAT
const& operator= (DAT
const& d) { data = d;
return data; }
89 DAT
const& operator= (DAT && dr) { data = move(dr);
return data; }
91 operator Storage&() {
return raw; }
92 operator Storage&&() {
return move(raw); }
98 , storage_{move (payload)}
103 : message{Symbol::BOTTOM}
Low-level Render Engine event — abstracted storage base.
Memory management scheme for activities and parameter data passed through the Scheduler within the Lu...
Any copy and copy construction prohibited.
Layer-1 of the Scheduler: queueing and prioritisation of activities.
Token or Atom with distinct identity.
Mix-Ins to allow or prohibit various degrees of copying and cloning.
Marker types to indicate a literal string and a Symbol.
Layer-2 of the Scheduler: coordination and interaction of activities.
Lumiera error handling (C++ interface).
EngineEvent(Symbol msgID, Storage &&payload)
base init for derived classes to implant custom payload
Vault-Layer implementation namespace root.
Collector and aggregator for performance data.