MayaFlux 0.4.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 class Counter;
15 }
16 namespace Filters {
17 class IIR;
18 class FIR;
19 }
20 namespace GpuSync {
21 class TextureNode;
24 class MeshWriterNode;
25 class SDFNode;
30 class LineSegmentsNode;
31 }
32 namespace Network {
33 class NodeNetwork;
34 class ModalNetwork;
35 class WaveguideNetwork;
36 class ResonatorNetwork;
37 class ParticleNetwork;
38 class PointCloudNetwork;
39 class MeshNetwork;
40 class InstanceNetwork;
41 }
42 namespace Input {
43 class InputNode;
44 class HIDNode;
45 class MIDINode;
46 class OSCNode;
47
48 struct InputConfig;
49 struct HIDConfig;
50 struct MIDIConfig;
51 struct OSCConfig;
52 }
53 class Constant;
54 class StreamReaderNode;
55}
56
57namespace Buffers {
58 class Buffer;
59 class AudioBuffer;
60 class NodeBuffer;
61 class FeedbackBuffer;
62 class SoundContainerBuffer;
63 class VKBuffer;
64 class NodeTextureBuffer;
65 class TextureBuffer;
66 class GeometryBuffer;
67 class CompositeGeometryBuffer;
68 class MeshBuffer;
69 class MeshNetworkBuffer;
70 class ComputeMeshBuffer;
71 class NetworkGeometryBuffer;
72 class InstanceNetworkBuffer;
73 class NetworkTextureBuffer;
74 class NetworkAudioBuffer;
75}
76
77namespace Kakshya {
78 class SignalSourceContainer;
79 class DynamicSoundStream;
80 class SoundFileContainer;
81 class VideoFileContainer;
82}
83
84namespace Core {
85 struct InputBinding;
86}
87
88namespace IO {
89 struct LoadConfig;
90}
91
92}
93
94#define ALL_NODE_REGISTRATIONS \
95 N(Sine, MayaFlux::Nodes::Generator::Sine) \
96 N(Phasor, MayaFlux::Nodes::Generator::Phasor) \
97 N(Impulse, MayaFlux::Nodes::Generator::Impulse) \
98 N(Logic, MayaFlux::Nodes::Generator::Logic) \
99 N(Polynomial, MayaFlux::Nodes::Generator::Polynomial) \
100 N(Random, MayaFlux::Nodes::Generator::Random) \
101 N(Counter, MayaFlux::Nodes::Generator::Counter) \
102 N(IIR, MayaFlux::Nodes::Filters::IIR) \
103 N(FIR, MayaFlux::Nodes::Filters::FIR) \
104 N(TextureNode, MayaFlux::Nodes::GpuSync::TextureNode) \
105 N(GeometryWriterNode, MayaFlux::Nodes::GpuSync::GeometryWriterNode) \
106 N(GlyphGeometryNode, MayaFlux::Nodes::GpuSync::GlyphGeometryNode) \
107 N(MeshWriterNode, MayaFlux::Nodes::GpuSync::MeshWriterNode) \
108 N(SDFNode, MayaFlux::Nodes::GpuSync::SDFNode) \
109 N(PathGeneratorNode, MayaFlux::Nodes::GpuSync::PathGeneratorNode) \
110 N(PointCollectionNode, MayaFlux::Nodes::GpuSync::PointCollectionNode) \
111 N(TopologyGeneratorNode, MayaFlux::Nodes::GpuSync::TopologyGeneratorNode) \
112 N(LineSegmentsNode, MayaFlux::Nodes::GpuSync::LineSegmentsNode) \
113 N(ProceduralTextureNode, MayaFlux::Nodes::GpuSync::ProceduralTextureNode) \
114 N(StreamReaderNode, MayaFlux::Nodes::StreamReaderNode) \
115 N(Constant, MayaFlux::Nodes::Constant)
116
117#define ALL_NODE_NETWORK_REGISTRATIONS \
118 W(ModalNetwork, MayaFlux::Nodes::Network::ModalNetwork) \
119 W(WaveguideNetwork, MayaFlux::Nodes::Network::WaveguideNetwork) \
120 W(ResonatorNetwork, MayaFlux::Nodes::Network::ResonatorNetwork) \
121 W(ParticleNetwork, MayaFlux::Nodes::Network::ParticleNetwork) \
122 W(PointCloudNetwork, MayaFlux::Nodes::Network::PointCloudNetwork) \
123 W(InstanceNetwork, MayaFlux::Nodes::Network::InstanceNetwork) \
124 W(MeshNetwork, MayaFlux::Nodes::Network::MeshNetwork)
125
126#define ALL_BUFFER_REGISTRATION \
127 B(AudioBuffer, MayaFlux::Buffers::AudioBuffer) \
128 B(NodeBuffer, MayaFlux::Buffers::NodeBuffer) \
129 B(FeedbackBuffer, MayaFlux::Buffers::FeedbackBuffer) \
130 B(SoundContainerBuffer, MayaFlux::Buffers::SoundContainerBuffer) \
131 B(VKBuffer, MayaFlux::Buffers::VKBuffer) \
132 B(NodeTextureBuffer, MayaFlux::Buffers::NodeTextureBuffer) \
133 B(TextureBuffer, MayaFlux::Buffers::TextureBuffer) \
134 B(GeometryBuffer, MayaFlux::Buffers::GeometryBuffer) \
135 B(CompositeGeometryBuffer, MayaFlux::Buffers::CompositeGeometryBuffer) \
136 B(MeshBuffer, MayaFlux::Buffers::MeshBuffer) \
137 B(MeshNetworkBuffer, MayaFlux::Buffers::MeshNetworkBuffer) \
138 B(ComputeMeshBuffer, MayaFlux::Buffers::ComputeMeshBuffer) \
139 B(NetworkGeometryBuffer, MayaFlux::Buffers::NetworkGeometryBuffer) \
140 B(NetworkTextureBuffer, MayaFlux::Buffers::NetworkTextureBuffer) \
141 B(InstanceNetworkBuffer, MayaFlux::Buffers::InstanceNetworkBuffer) \
142 B(NetworkAudioBuffer, MayaFlux::Buffers::NetworkAudioBuffer)
Finite Impulse Response filter implementation.
Definition FIR.hpp:34
Infinite Impulse Response filter implementation.
Definition IIR.hpp:36
Integer step accumulator with modulo wrap and optional trigger reset.
Definition Counter.hpp:26
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:167
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
Base class for nodes that generate 3D geometry data.
GeometryWriterNode that emits glyph vector outlines as LINE_LIST geometry.
Accumulates discrete unconnected line segments for LINE_LIST rendering.
Indexed triangle mesh for static or infrequently-updated geometry.
Generates dense vertex paths from sparse control points or freehand drawing.
Unstructured collection of 3D points for visualization.
Pixels generated by arbitrary functions.
MeshWriterNode that extracts a TRIANGLE_LIST isosurface from a Kinesis::SpatialField each frame via m...
Definition SDFNode.hpp:46
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 Runtime.cpp:12