MayaFlux 0.1.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches
Registry.hpp
Go to the documentation of this file.
1#pragma once
2
3namespace MayaFlux {
4
5namespace Nodes {
6 class Node;
7 namespace Generator {
8 class Sine;
9 class Phasor;
10 class Impulse;
11 class Logic;
12 class Polynomial;
13 namespace Stochastics {
14 class Random;
15 }
16 }
17 namespace Filters {
18 class IIR;
19 class FIR;
20 }
21 namespace GpuSync {
22 class ComputeOutNode;
23 class TextureNode;
25 class PointNode;
27 }
28
29 class NodeNetwork;
30 class ModalNetwork;
31 class ParticleNetwork;
32}
33
34namespace Buffers {
35 class Buffer;
36 class AudioBuffer;
37 class NodeBuffer;
38 class FeedbackBuffer;
39 class ContainerBuffer;
40 class VKBuffer;
41 class TextureBindBuffer;
42 class TextureBuffer;
43 class GeometryBuffer;
44 class NetworkGeometryBuffer;
45}
46
47namespace Kakshya {
48 class SignalSourceContainer;
49 class DynamicSoundStream;
50 class SoundFileContainer;
51}
52}
53
54#define ALL_NODE_REGISTRATIONS \
55 N(Sine, MayaFlux::Nodes::Generator::Sine) \
56 N(Phasor, MayaFlux::Nodes::Generator::Phasor) \
57 N(Impulse, MayaFlux::Nodes::Generator::Impulse) \
58 N(Logic, MayaFlux::Nodes::Generator::Logic) \
59 N(Polynomial, MayaFlux::Nodes::Generator::Polynomial) \
60 N(Random, MayaFlux::Nodes::Generator::Stochastics::Random) \
61 N(IIR, MayaFlux::Nodes::Filters::IIR) \
62 N(FIR, MayaFlux::Nodes::Filters::FIR) \
63 N(ComputeOutNode, MayaFlux::Nodes::GpuSync::ComputeOutNode) \
64 N(TextureNode, MayaFlux::Nodes::GpuSync::TextureNode) \
65 N(GeometryWriterNode, MayaFlux::Nodes::GpuSync::GeometryWriterNode) \
66 N(PointNode, MayaFlux::Nodes::GpuSync::PointNode) \
67 N(PointCollectionNode, MayaFlux::Nodes::GpuSync::PointCollectionNode)
68
69#define ALL_NODE_NETWORK_REGISTRATIONS \
70 W(ModalNetwork, MayaFlux::Nodes::ModalNetwork) \
71 W(ParticleNetwork, MayaFlux::Nodes::ParticleNetwork)
72
73#define ALL_BUFFER_REGISTRATION \
74 B(AudioBuffer, MayaFlux::Buffers::AudioBuffer) \
75 B(NodeBuffer, MayaFlux::Buffers::NodeBuffer) \
76 B(FeedbackBuffer, MayaFlux::Buffers::FeedbackBuffer) \
77 B(ContainerBuffer, MayaFlux::Buffers::ContainerBuffer) \
78 B(VKBuffer, MayaFlux::Buffers::VKBuffer) \
79 B(TextureBindBuffer, MayaFlux::Buffers::TextureBindBuffer) \
80 B(TextureBuffer, MayaFlux::Buffers::TextureBuffer) \
81 B(GeometryBuffer, MayaFlux::Buffers::GeometryBuffer) \
82 B(NetworkGeometryBuffer, MayaFlux::Buffers::NetworkGeometryBuffer)
Finite Impulse Response filter implementation.
Definition FIR.hpp:34
Infinite Impulse Response filter implementation.
Definition IIR.hpp:36
Base class for all signal and pattern generators in Maya Flux.
Impulse generator node.
Definition Impulse.hpp:32
Digital signal processor implementing boolean logic operations.
Definition Logic.hpp:162
Phase ramp generator node.
Definition Phasor.hpp:31
Generator that produces values based on polynomial functions.
Sinusoidal oscillator generator node.
Definition Sine.hpp:32
Computational stochastic signal generator with multiple probability distributions.
Node that reads back data from GPU buffer to CPU.
Base class for nodes that generate 3D geometry data.
Unstructured collection of 3D points for visualization.
Single 3D point in space.
Definition PointNode.hpp:27
Base class for texture-generating nodes.
Network of resonant modes for modal synthesis.
Abstract base class for structured collections of nodes with defined relationships.
Network of particles with physics simulation.
@ Nodes
DSP Generator and Filter Nodes, graph pipeline, node management.
Main namespace for the Maya Flux audio engine.
Definition LiveAid.hpp:6