VJ Master 1.0
Real-time audio analysis and visualisation.
Loading...
Searching...
No Matches
ST_MIDIControlInterface.h
1// Copyright (c) 2025 Aaron Trotter (ShaderTech). All Rights Reserved.
2
3#pragma once
4
5#include "CoreMinimal.h"
6#include "UObject/Interface.h"
7#include "ST_MIDIControlInterface.generated.h"
8
14UINTERFACE(BlueprintType)
15class ST_AUDIOCONTROL_API UST_MIDIControlInterface : public UInterface
16{
17 GENERATED_BODY()
18};
19
25class ST_AUDIOCONTROL_API IST_MIDIControlInterface : public IInterface
26{
27 GENERATED_BODY()
28
29public:
30
34 UFUNCTION(BlueprintNativeEvent, Category = "ShaderTech|AudioControl|MIDI")
36
40 UFUNCTION(BlueprintNativeEvent, Category = "ShaderTech|AudioControl|MIDI")
42
50 UFUNCTION(BlueprintNativeEvent, Category = "ShaderTech|AudioControl|MIDI")
51 void OnMIDINoteOn(int32 Timestamp, int32 Channel, int32 Note, int32 Velocity);
52
60 UFUNCTION(BlueprintNativeEvent, Category = "ShaderTech|AudioControl|MIDI")
61 void OnMIDINoteOff(int32 Timestamp, int32 Channel, int32 Note, int32 Velocity);
62
70 UFUNCTION(BlueprintNativeEvent, Category = "ShaderTech|AudioControl|MIDI")
71 void OnMIDIPitchBend(FIntPoint PitchBendRange, int32 Timestamp, int32 Channel, int32 Pitch);
72
80 UFUNCTION(BlueprintNativeEvent, Category = "ShaderTech|AudioControl|MIDI")
81 void OnMIDIAftertouch(int32 Timestamp, int32 Channel, int32 Note, int32 Amount);
82
91 UFUNCTION(BlueprintNativeEvent, Category = "ShaderTech|AudioControl|MIDI")
92 void OnMIDIControlChange(FIntPoint ControlChangeRange, int32 Timestamp, int32 Channel, int32 Type, int32 Value);
93
101 UFUNCTION(BlueprintNativeEvent, Category = "ShaderTech|AudioControl|MIDI")
102 void OnMIDIProgramChange(int32 Timestamp, int32 Channel, int32 ControlID, int32 Velocity);
103
110 UFUNCTION(BlueprintNativeEvent, Category = "ShaderTech|AudioControl|MIDI")
111 void OnMIDIChannelAftertouch(int32 Timestamp, int32 Channel, int32 Amount);
112};
Interface for MIDI control event handling.
Definition ST_MIDIControlInterface.h:26
void OnMIDIControlChange(FIntPoint ControlChangeRange, int32 Timestamp, int32 Channel, int32 Type, int32 Value)
Called when a MIDI Control Change (CC) message is received.
void OnMIDIItemDeregistered()
Called when a MIDI item is deregistered from the system.
void OnMIDIPitchBend(FIntPoint PitchBendRange, int32 Timestamp, int32 Channel, int32 Pitch)
Called when a MIDI Pitch Bend message is received.
void OnMIDINoteOn(int32 Timestamp, int32 Channel, int32 Note, int32 Velocity)
Called when a MIDI Note On message is received.
void OnMIDIAftertouch(int32 Timestamp, int32 Channel, int32 Note, int32 Amount)
Called when a MIDI Aftertouch (per-note) message is received.
void OnMIDINoteOff(int32 Timestamp, int32 Channel, int32 Note, int32 Velocity)
Called when a MIDI Note Off message is received.
void OnMIDIChannelAftertouch(int32 Timestamp, int32 Channel, int32 Amount)
Called when a MIDI Channel Aftertouch message is received.
void OnMIDIItemRegistered()
Called when a MIDI item is registered with the system.
void OnMIDIProgramChange(int32 Timestamp, int32 Channel, int32 ControlID, int32 Velocity)
Called when a MIDI Program Change message is received.
Unreal interface class for MIDI control.
Definition ST_MIDIControlInterface.h:16