Navigation
API > API/Plugins > API/Plugins/DMXProtocol
Higher level abstraction of a DMX input hiding networking specific and protocol specific complexity from the game.
To input DMX into your objects, refer to DMXRawListener and DMXTickedUniverseListener.
Can only be constructed via DMXPortManger, see FDMXPortManager::CreateInputPort and FDMXPortManager::CreateInputPortFromConfig
| Name | FDMXInputPort |
| Type | class |
| Header File | /Engine/Plugins/VirtualProduction/DMX/DMXProtocol/Source/DMXProtocol/Public/IO/DMXInputPort.h |
| Include Path | #include "IO/DMXInputPort.h" |
Syntax
class FDMXInputPort :
public FDMXPort ,
public FTickableGameObject
Inheritance Hierarchy
- FSharedFromThisBase → TSharedFromThis → FDMXPort → FDMXInputPort
- FTickableObjectBase → FTickableGameObject → FDMXInputPort
Destructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual ~FDMXInputPort() |
IO/DMXInputPort.h |
Variables
Protected
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| AccessRawListenersMutex | FCriticalSection | Mutex access for the RawListeners array | IO/DMXInputPort.h | |
| bPendingRegistration | bool | True while registration is pending | IO/DMXInputPort.h | |
| bReceiveDMXEnabled | bool | According to DMXProtcolSettings, true if DMX should be received | IO/DMXInputPort.h | |
| bRegistered | TAtomic< bool > | True if the port is registered with it its protocol | IO/DMXInputPort.h | |
| bUseDefaultInputQueue | bool | If true, adds data to the default input queue and fills the UniverseToLatestSignalMap with it | IO/DMXInputPort.h | |
| DefaultInputQueue | TQueue< FDMXSignalSharedPtr, EQueueMode::Mpsc > | The default buffer, which is being read on tick | IO/DMXInputPort.h | |
| ExternUniverseToLatestSignalMap | TMap< int32, FDMXSignalSharedPtr > | Map of latest Singals per extern Universe | IO/DMXInputPort.h | |
| FDMXPortManager | friend | Friend DMXPortManager so it can create instances and unregister void instances. | IO/DMXInputPort.h | |
| FDMXRawListener | friend | Friend Raw Listener so it can add and remove itself to the port. | IO/DMXInputPort.h | |
| HighestReceivedPriority | int32 | The highest priority received | IO/DMXInputPort.h | |
| LocalUniverseToListenerGroupMap | TMap< int32, TSet< TSharedRef< FDMXTickedUniverseListener > > > | Map of Universe Inputs with their Universes | IO/DMXInputPort.h | |
| LowestReceivedPriority | int32 | The highest priority received | IO/DMXInputPort.h | |
| PortGuid | FGuid | The unique identifier of this port, shared with the port config this was constructed from. | IO/DMXInputPort.h | |
| Priority | int32 | The Priority value, used by the PriorityStrategy | IO/DMXInputPort.h | |
| PriorityStrategy | EDMXPortPriorityStrategy | How to manage priority | IO/DMXInputPort.h | |
| RawListeners | TSet< TSharedRef< FDMXRawListener > > | Map of raw isteners | IO/DMXInputPort.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual bool CheckPriority
(
const int32 InPriority |
IO/DMXInputPort.h | ||
void ClearBuffers() |
Clears all buffers | IO/DMXInputPort.h | |
const TMap< int32, FDMXSignalSharedPtr > & GameThreadGetAllDMXSignals() |
Gets all the last signal received. Game-Thread only | IO/DMXInputPort.h | |
bool GameThreadGetDMXSignal
(
int32 LocalUniverseID, |
Gets the last signal received in specified local universe. | IO/DMXInputPort.h | |
bool GameThreadGetDMXSignalFromRemoteUniverse
(
FDMXSignalSharedPtr& OutDMXSignal, |
DEPRECATED 4.27. Gets the DMX signal from an extern (remote) Universe ID. | IO/DMXInputPort.h | |
void GameThreadInjectDMXSignal
(
const FDMXSignalSharedRef& DMXSignal |
Injects a dmx signal into the game thread. | IO/DMXInputPort.h | |
void InputDMXSignal
(
const FDMXSignalSharedRef& DMXSignal |
Thread-safe: Pushes a DMX Signal into the buffer | IO/DMXInputPort.h | |
bool IsReceiveDMXEnabled() |
Returns true if receive DMX is disabled | IO/DMXInputPort.h | |
FDMXInputPortConfig MakeInputPortConfig() |
Creates a dmx input port config that corresponds to the port | IO/DMXInputPort.h | |
void SetUseDefaultQueue
(
bool bUse |
Sets if the port should listen to its default queue. | IO/DMXInputPort.h | |
void SingleProducerInputDMXSignal
(
const FDMXSignalSharedRef& DMXSignal |
Single Producer thread-safe: Pushes a DMX Signal into the buffer (For protocol only) | IO/DMXInputPort.h | |
void UpdateFromConfig
(
FDMXInputPortConfig& InOutInputPortConfig, |
Updates the Port to use the config of the InputPortConfig. Makes the config valid if it's invalid. | IO/DMXInputPort.h |
Overridden from FDMXPort
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual const FGuid & GetPortGuid() |
Returns the Guid of the Port | IO/DMXInputPort.h | |
virtual bool IsRegistered () |
~Begin DMXPort Interface declaration | IO/DMXInputPort.h |
Protected
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual TStatId GetStatId() |
IO/DMXInputPort.h | ||
virtual ETickableTickType GetTickableTickType() |
IO/DMXInputPort.h | ||
virtual bool IsTickableInEditor() |
IO/DMXInputPort.h | ||
virtual void Tick
(
float DeltaTime |
IO/DMXInputPort.h |
Overridden from FDMXPort
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual void AddRawListener
(
TSharedRef< FDMXRawListener > InRawListener |
Adds a Raw Listener that receives all raw signals received on this port. | IO/DMXInputPort.h | |
virtual bool Register() |
Registers the port with its protocol. Returns true if successfully registered | IO/DMXInputPort.h | |
virtual void RemoveRawListener
(
TSharedRef< FDMXRawListener > InRawListener |
Removes the Raw Listener from the port. Should not be used directly, instead see DMXRawListener. | IO/DMXInputPort.h | |
virtual void Unregister() |
Unregisteres the port if it was registered with its protocol | IO/DMXInputPort.h |
Static
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
static FDMXInputPortSharedRef CreateFromConfig
(
FDMXInputPortConfig& InputPortConfig |
Creates an output port tied to a specific config. Makes the config valid if it's invalid. | IO/DMXInputPort.h |