MayaFlux 0.3.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 class Random;
14 }
15 namespace Filters {
16 class IIR;
17 class FIR;
18 }
19 namespace GpuSync {
20 class ComputeOutNode;
21 class TextureNode;
23 class PointNode;
28 }
29 namespace Network {
30 class NodeNetwork;
31 class ModalNetwork;
32 class WaveguideNetwork;
33 class ResonatorNetwork;
34 class ParticleNetwork;
35 class PointCloudNetwork;
36 }
37 namespace Input {
38 class InputNode;
39 class HIDNode;
40 class MIDINode;
41
42 struct InputConfig;
43 struct HIDConfig;
44 struct MIDIConfig;
45 }
46 class Constant;
47 class StreamReaderNode;
48}
49
50namespace Buffers {
51 class Buffer;
52 class AudioBuffer;
53 class NodeBuffer;
54 class FeedbackBuffer;
55 class SoundContainerBuffer;
56 class VKBuffer;
57 class NodeTextureBuffer;
58 class TextureBuffer;
59 class GeometryBuffer;
60 class NetworkGeometryBuffer;
61 class NetworkAudioBuffer;
62}
63
64namespace Kakshya {
65 class SignalSourceContainer;
66 class DynamicSoundStream;
67 class SoundFileContainer;
68 class VideoFileContainer;
69}
70
71namespace Core {
72 struct InputBinding;
73}
74
75namespace IO {
76 struct LoadConfig;
77}
78
79}
80
81#define ALL_NODE_REGISTRATIONS \
82 N(Sine, MayaFlux::Nodes::Generator::Sine) \
83 N(Phasor, MayaFlux::Nodes::Generator::Phasor) \
84 N(Impulse, MayaFlux::Nodes::Generator::Impulse) \
85 N(Logic, MayaFlux::Nodes::Generator::Logic) \
86 N(Polynomial, MayaFlux::Nodes::Generator::Polynomial) \
87 N(Random, MayaFlux::Nodes::Generator::Random) \
88 N(IIR, MayaFlux::Nodes::Filters::IIR) \
89 N(FIR, MayaFlux::Nodes::Filters::FIR) \
90 N(ComputeOutNode, MayaFlux::Nodes::GpuSync::ComputeOutNode) \
91 N(TextureNode, MayaFlux::Nodes::GpuSync::TextureNode) \
92 N(GeometryWriterNode, MayaFlux::Nodes::GpuSync::GeometryWriterNode) \
93 N(PointNode, MayaFlux::Nodes::GpuSync::PointNode) \
94 N(PathGeneratorNode, MayaFlux::Nodes::GpuSync::PathGeneratorNode) \
95 N(PointCollectionNode, MayaFlux::Nodes::GpuSync::PointCollectionNode) \
96 N(TopologyGeneratorNode, MayaFlux::Nodes::GpuSync::TopologyGeneratorNode) \
97 N(ProceduralTextureNode, MayaFlux::Nodes::GpuSync::ProceduralTextureNode) \
98 N(StreamReaderNode, MayaFlux::Nodes::StreamReaderNode) \
99 N(Constant, MayaFlux::Nodes::Constant)
100
101#define ALL_NODE_NETWORK_REGISTRATIONS \
102 W(ModalNetwork, MayaFlux::Nodes::Network::ModalNetwork) \
103 W(WaveguideNetwork, MayaFlux::Nodes::Network::WaveguideNetwork) \
104 W(ResonatorNetwork, MayaFlux::Nodes::Network::ResonatorNetwork) \
105 W(ParticleNetwork, MayaFlux::Nodes::Network::ParticleNetwork) \
106 W(PointCloudNetwork, MayaFlux::Nodes::Network::PointCloudNetwork)
107
108#define ALL_BUFFER_REGISTRATION \
109 B(AudioBuffer, MayaFlux::Buffers::AudioBuffer) \
110 B(NodeBuffer, MayaFlux::Buffers::NodeBuffer) \
111 B(FeedbackBuffer, MayaFlux::Buffers::FeedbackBuffer) \
112 B(SoundContainerBuffer, MayaFlux::Buffers::SoundContainerBuffer) \
113 B(VKBuffer, MayaFlux::Buffers::VKBuffer) \
114 B(NodeTextureBuffer, MayaFlux::Buffers::NodeTextureBuffer) \
115 B(TextureBuffer, MayaFlux::Buffers::TextureBuffer) \
116 B(GeometryBuffer, MayaFlux::Buffers::GeometryBuffer) \
117 B(NetworkGeometryBuffer, MayaFlux::Buffers::NetworkGeometryBuffer) \
118 B(NetworkAudioBuffer, MayaFlux::Buffers::NetworkAudioBuffer)
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:168
Phase ramp generator node.
Definition Phasor.hpp:31
Generator that produces values based on polynomial functions.
Node wrapper for Kinesis::Stochastic - signal-rate stochastic generation.
Sinusoidal oscillator generator node.
Definition Sine.hpp:32
Node that reads back data from GPU buffer to CPU.
Base class for nodes that generate 3D geometry data.
Generates dense vertex paths from sparse control points or freehand drawing.
Unstructured collection of 3D points for visualization.
Single 3D point in space.
Definition PointNode.hpp:21
Pixels generated by arbitrary functions.
Base class for texture-generating nodes.
Generates dynamic mesh topology from sparse control points.
@ Nodes
DSP Generator and Filter Nodes, graph pipeline, node management.
@ Buffers
Buffers, Managers, processors and processing chains.
@ Core
Core engine, backend, subsystems.
@ Kakshya
Containers[Signalsource, Stream, File], Regions, DataProcessors.
@ IO
Networking, file handling, streaming.
Main namespace for the Maya Flux audio engine.
Definition LiveAid.hpp:6