|
MayaFlux 0.4.0
Digital-First Multimedia Processing Framework
|
Namespaces | |
| namespace | State |
Classes | |
| class | Agent |
| Object that both perceives nearby entities and acts on MayaFlux objects. More... | |
| struct | AudioSink |
| Holds the plumbing for one audio output registered from a Nexus object. More... | |
| class | Emitter |
| Object that acts on existing MayaFlux objects when committed. More... | |
| class | Expanse |
| A defined region of space with a containment test and crossing actions. More... | |
| class | Fabric |
| Orchestrates spatial indexing and scheduling for Nexus objects. More... | |
| struct | InfluenceContext |
| Data passed to an Emitter or Agent influence function on each commit. More... | |
| struct | InfluenceUBO |
| GPU-side std140 layout matching InfluenceContext plain data fields. More... | |
| class | Locus |
| Agent that perceives the world from a navigation state and influences how the things it touches are viewed. More... | |
| struct | PerceptionContext |
| Data passed to a Sensor or Agent perception function on each commit. More... | |
| class | Presence |
| Agent that affects its surroundings by being there. More... | |
| struct | RenderSink |
| Holds the plumbing for one graphics output registered from a Nexus object. More... | |
| class | Sensor |
| Object that reacts to nearby entities when committed. More... | |
| class | StateDecoder |
| Patches Fabric state from a previously encoded EXR + JSON schema pair. More... | |
| class | StateEncoder |
| Serializes Fabric state to an EXR texture and JSON schema. More... | |
| class | Tapestry |
| Owner of one or more Fabrics and the shared state they rely on. More... | |
| class | Wiring |
| Fluent builder that wires an entity into Fabric's scheduling infrastructure. More... | |
Typedefs | |
| using | RenderFn = std::function< void(const InfluenceContext &)> |
Functions | |
| void | add_audio_sink (std::vector< AudioSink > &sinks, Buffers::BufferManager &mgr, uint32_t channel, std::function< Kakshya::DataVariant(const InfluenceContext &)> fn={}, std::string fn_name={}) |
Create and register an audio sink on channel. | |
| void | add_render_sink (std::vector< RenderSink > &sinks, Buffers::BufferManager &mgr, const Portal::Graphics::RenderConfig &config, RenderFn fn={}, std::string fn_name={}, const std::optional< glm::vec3 > &initial_position={}) |
Create and register a render sink targeting window. | |
| void | dispatch_audio_sinks (std::vector< AudioSink > &sinks, const InfluenceContext &ctx) |
| For each sink that has a producer fn, call it and push the result. | |
| void | dispatch_render_sinks (std::vector< RenderSink > &sinks, const InfluenceContext &ctx) |
| For each sink that has a producer fn, call it and push the result. | |
| void | push_audio_data (std::vector< AudioSink > &sinks, std::span< const double > samples) |
Push samples to every audio sink in sinks. | |
| void | remove_audio_sink (std::vector< AudioSink > &sinks, Buffers::BufferManager &mgr, uint32_t channel) |
Unregister and destroy the audio sink on channel. | |
| void | remove_render_sink (std::vector< RenderSink > &sinks, Buffers::BufferManager &mgr, const std::shared_ptr< Core::Window > &window) |
Unregister and destroy the render sink targeting window. | |