MayaFlux 1.0.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 RelationNetwork;
38 class ParticleNetwork;
39 class PointCloudNetwork;
40 class MeshNetwork;
41 class InstanceNetwork;
42 class AssemblyNetwork;
43 }
44 namespace Input {
45 class InputNode;
46 class HIDNode;
47 class MIDINode;
48 class OSCNode;
49 class TabletNode;
50
51 struct InputConfig;
52 struct HIDConfig;
53 struct MIDIConfig;
54 struct OSCConfig;
55 struct TabletConfig;
56 }
57 class Constant;
58 class StreamReaderNode;
59}
60
61namespace Buffers {
62 class Buffer;
63 class AudioBuffer;
64 class NodeBuffer;
65 class FeedbackBuffer;
66 class SoundContainerBuffer;
67 class VKBuffer;
68 class NodeTextureBuffer;
69 class TextureBuffer;
70 class TextureArrayBuffer;
71 class GeometryBuffer;
72 class CompositeGeometryBuffer;
73 class MeshBuffer;
74 class MeshNetworkBuffer;
75 class ComputeMeshBuffer;
76 class NetworkGeometryBuffer;
77 class InstanceNetworkBuffer;
78 class NetworkTextureBuffer;
79 class NetworkAudioBuffer;
80}
81
82namespace Kakshya {
83 class SignalSourceContainer;
84 class DynamicSoundStream;
85 class SoundFileContainer;
86 class VideoFileContainer;
87}
88
89namespace Core {
90 struct InputBinding;
91}
92
93namespace IO {
94 struct VideoLoadConfig;
95}
96
97}
98
99#define ALL_NODE_REGISTRATIONS \
100 N(Sine, MayaFlux::Nodes::Generator::Sine) \
101 N(Phasor, MayaFlux::Nodes::Generator::Phasor) \
102 N(Impulse, MayaFlux::Nodes::Generator::Impulse) \
103 N(Logic, MayaFlux::Nodes::Generator::Logic) \
104 N(Polynomial, MayaFlux::Nodes::Generator::Polynomial) \
105 N(Random, MayaFlux::Nodes::Generator::Random) \
106 N(Counter, MayaFlux::Nodes::Generator::Counter) \
107 N(IIR, MayaFlux::Nodes::Filters::IIR) \
108 N(FIR, MayaFlux::Nodes::Filters::FIR) \
109 N(TextureNode, MayaFlux::Nodes::GpuSync::TextureNode) \
110 N(GeometryWriterNode, MayaFlux::Nodes::GpuSync::GeometryWriterNode) \
111 N(GlyphGeometryNode, MayaFlux::Nodes::GpuSync::GlyphGeometryNode) \
112 N(MeshWriterNode, MayaFlux::Nodes::GpuSync::MeshWriterNode) \
113 N(SDFNode, MayaFlux::Nodes::GpuSync::SDFNode) \
114 N(PathGeneratorNode, MayaFlux::Nodes::GpuSync::PathGeneratorNode) \
115 N(PointCollectionNode, MayaFlux::Nodes::GpuSync::PointCollectionNode) \
116 N(TopologyGeneratorNode, MayaFlux::Nodes::GpuSync::TopologyGeneratorNode) \
117 N(LineSegmentsNode, MayaFlux::Nodes::GpuSync::LineSegmentsNode) \
118 N(ProceduralTextureNode, MayaFlux::Nodes::GpuSync::ProceduralTextureNode) \
119 N(StreamReaderNode, MayaFlux::Nodes::StreamReaderNode) \
120 N(Constant, MayaFlux::Nodes::Constant)
121
122#define ALL_NODE_NETWORK_REGISTRATIONS \
123 W(ModalNetwork, MayaFlux::Nodes::Network::ModalNetwork) \
124 W(WaveguideNetwork, MayaFlux::Nodes::Network::WaveguideNetwork) \
125 W(ResonatorNetwork, MayaFlux::Nodes::Network::ResonatorNetwork) \
126 W(RelationNetwork, MayaFlux::Nodes::Network::RelationNetwork) \
127 W(ParticleNetwork, MayaFlux::Nodes::Network::ParticleNetwork) \
128 W(PointCloudNetwork, MayaFlux::Nodes::Network::PointCloudNetwork) \
129 W(InstanceNetwork, MayaFlux::Nodes::Network::InstanceNetwork) \
130 W(MeshNetwork, MayaFlux::Nodes::Network::MeshNetwork) \
131 W(AssemblyNetwork, MayaFlux::Nodes::Network::AssemblyNetwork)
132
133#define ALL_BUFFER_REGISTRATION \
134 B(AudioBuffer, MayaFlux::Buffers::AudioBuffer) \
135 B(NodeBuffer, MayaFlux::Buffers::NodeBuffer) \
136 B(FeedbackBuffer, MayaFlux::Buffers::FeedbackBuffer) \
137 B(SoundContainerBuffer, MayaFlux::Buffers::SoundContainerBuffer) \
138 B(VKBuffer, MayaFlux::Buffers::VKBuffer) \
139 B(NodeTextureBuffer, MayaFlux::Buffers::NodeTextureBuffer) \
140 B(TextureBuffer, MayaFlux::Buffers::TextureBuffer) \
141 B(TextureArrayBuffer, MayaFlux::Buffers::TextureArrayBuffer) \
142 B(GeometryBuffer, MayaFlux::Buffers::GeometryBuffer) \
143 B(CompositeGeometryBuffer, MayaFlux::Buffers::CompositeGeometryBuffer) \
144 B(MeshBuffer, MayaFlux::Buffers::MeshBuffer) \
145 B(MeshNetworkBuffer, MayaFlux::Buffers::MeshNetworkBuffer) \
146 B(ComputeMeshBuffer, MayaFlux::Buffers::ComputeMeshBuffer) \
147 B(NetworkGeometryBuffer, MayaFlux::Buffers::NetworkGeometryBuffer) \
148 B(NetworkTextureBuffer, MayaFlux::Buffers::NetworkTextureBuffer) \
149 B(InstanceNetworkBuffer, MayaFlux::Buffers::InstanceNetworkBuffer) \
150 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:180
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