Fast signal management with O(1) lookups and direct value access. More...
Classes | |
| interface | IDirectSignalAccess |
Public Member Functions | |
| void | Initialize (InterfaceBaseClass interfaceBase) |
| Initializes the manager with signals from an interface. | |
| Signal | GetSignalFast (string name) |
| O(1) signal lookup - much faster than GetSignal. | |
| T | GetValueFast< T > (string signalName) |
| O(1) direct value access - bypasses Unity's GetComponent calls. | |
| void | SetValueFast< T > (string signalName, T value) |
| O(1) direct value setting. | |
| void | UpdateBatch (Dictionary< string, object > values) |
| Batch value updates - very fast for multiple signals. | |
| Dictionary< string, object > | GetAllValuesFast () |
| Gets all values at once - useful for data logging or debugging. | |
| void | ReadAllInputs (Dictionary< string, object > outputDict) |
| Gets input signals only. | |
| void | WriteAllOutputs (Dictionary< string, object > inputDict) |
| Sets output signals only. | |
| bool | HasSignal (string signalName) |
| Checks if signal exists. | |
| T | GetMetadataSafe< T > (string signalName, string key, T defaultValue=default(T)) |
| Gets signal metadata in thread-safe manner using cached copy. | |
| Dictionary< string, object > | GetAllMetadataSafe (string signalName) |
| Gets all metadata for a signal in thread-safe manner using cached copy. | |
| bool | HasMetadataSafe (string signalName, string key) |
| Checks if signal has metadata key in thread-safe manner. | |
| Dictionary< string, SignalWithMetadata > | GetSignalsWithMetadataSafe (bool inputsOnly=false, bool outputsOnly=false) |
| Gets signals with metadata for batch operations in thread-safe manner. | |
| void | Clear () |
| Clears all cached data. | |
| List< string > | GetInputSignalNames () |
| Gets all input signal names in thread-safe manner once initialized. | |
| List< string > | GetOutputSignalNames () |
| Gets all output signal names in thread-safe manner once initialized. | |
| List< string > | GetAllSignalNames () |
| Gets all signal names in thread-safe manner once initialized. | |
Detailed Description
Fast signal management with O(1) lookups and direct value access.
Member Function Documentation
◆ Clear()
| void realvirtual.FastSignalManager.Clear | ( | ) |
Clears all cached data.
◆ GetAllMetadataSafe()
| Dictionary< string, object > realvirtual.FastSignalManager.GetAllMetadataSafe | ( | string | signalName | ) |
Gets all metadata for a signal in thread-safe manner using cached copy.
◆ GetAllSignalNames()
| List< string > realvirtual.FastSignalManager.GetAllSignalNames | ( | ) |
Gets all signal names in thread-safe manner once initialized.
◆ GetAllValuesFast()
| Dictionary< string, object > realvirtual.FastSignalManager.GetAllValuesFast | ( | ) |
Gets all values at once - useful for data logging or debugging.
◆ GetInputSignalNames()
| List< string > realvirtual.FastSignalManager.GetInputSignalNames | ( | ) |
Gets all input signal names in thread-safe manner once initialized.
◆ GetMetadataSafe< T >()
| T realvirtual.FastSignalManager.GetMetadataSafe< T > | ( | string | signalName, |
| string | key, | ||
| T | defaultValue = default(T) |
||
| ) |
Gets signal metadata in thread-safe manner using cached copy.
◆ GetOutputSignalNames()
| List< string > realvirtual.FastSignalManager.GetOutputSignalNames | ( | ) |
Gets all output signal names in thread-safe manner once initialized.
◆ GetSignalFast()
| Signal realvirtual.FastSignalManager.GetSignalFast | ( | string | name | ) |
O(1) signal lookup - much faster than GetSignal.
◆ GetSignalsWithMetadataSafe()
| Dictionary< string, SignalWithMetadata > realvirtual.FastSignalManager.GetSignalsWithMetadataSafe | ( | bool | inputsOnly = false, |
| bool | outputsOnly = false |
||
| ) |
Gets signals with metadata for batch operations in thread-safe manner.
◆ GetValueFast< T >()
| T realvirtual.FastSignalManager.GetValueFast< T > | ( | string | signalName | ) |
O(1) direct value access - bypasses Unity's GetComponent calls.
◆ HasMetadataSafe()
| bool realvirtual.FastSignalManager.HasMetadataSafe | ( | string | signalName, |
| string | key | ||
| ) |
Checks if signal has metadata key in thread-safe manner.
◆ HasSignal()
| bool realvirtual.FastSignalManager.HasSignal | ( | string | signalName | ) |
Checks if signal exists.
◆ Initialize()
| void realvirtual.FastSignalManager.Initialize | ( | InterfaceBaseClass | interfaceBase | ) |
Initializes the manager with signals from an interface.
◆ ReadAllInputs()
| void realvirtual.FastSignalManager.ReadAllInputs | ( | Dictionary< string, object > | outputDict | ) |
Gets input signals only.
◆ SetValueFast< T >()
| void realvirtual.FastSignalManager.SetValueFast< T > | ( | string | signalName, |
| T | value | ||
| ) |
O(1) direct value setting.
◆ UpdateBatch()
| void realvirtual.FastSignalManager.UpdateBatch | ( | Dictionary< string, object > | values | ) |
Batch value updates - very fast for multiple signals.
◆ WriteAllOutputs()
| void realvirtual.FastSignalManager.WriteAllOutputs | ( | Dictionary< string, object > | inputDict | ) |
Sets output signals only.