Skip to content

Struct FNNEBindingCreator

Struct FNNEBindingCreator

  • Defined in File NNEBindingCreator.h

Inheritance Relationships

Base Type

struct FNNEBindingCreator : public FNNEBufferVisitor

Source: Source/Schola/NNE/Public/NNEUtils/NNEBindingCreator.h

Dependencies: FNNEBoxBuffer, FNNEDictBuffer, FNNEDiscreteBuffer, FNNEMultiBinaryBuffer, FNNEMultiDiscreteBuffer, FNNEPointBuffer, FSpace

Visitor that creates NNE tensor bindings from buffers.

This visitor traverses buffer structures and creates corresponding NNE tensor bindings that can be used for neural network inference, matching buffers to tensor descriptors.


Public Functions

SymbolDetails
FNNEBindingCreatorConstructor that initializes the binding creator.
~FNNEBindingCreator
operator()Visit operation for dictionary buffers.
operator()Visit operation for box buffers.
operator()Visit operation for multi-binary buffers.
operator()Visit operation for discrete buffers.
operator()Visit operation for multi-discrete buffers.

FNNEBindingCreator

inline FNNEBindingCreator(TInstancedStruct<FNNEPointBuffer> &InBuffer,
TConstArrayView<UE::NNE::FTensorDesc> InTensorDescs,
TArray<UE::NNE::FTensorBindingCPU> &OutBindings)

Constructor that initializes the binding creator.

Parameters

  • InBuffer – [in] The buffer to create bindings from

  • InTensorDescs – [in] The tensor descriptors from the model

  • OutBindings – [out] The array to populate with tensor bindings

#DirectionNameTypeDescription
1InBufferTInstancedStruct< FNNEPointBuffer > &The buffer to create bindings from
2InTensorDescsTConstArrayView< UE::NNE::FTensorDesc >The tensor descriptors from the model
3OutBindingsTArray< UE::NNE::FTensorBindingCPU > &The array to populate with tensor bindings

Attributes: inline

Source: Source/Schola/NNE/Public/NNEUtils/NNEBindingCreator.h


~FNNEBindingCreator

virtual ~FNNEBindingCreator() = default

Attributes: virtual

Source: Source/Schola/NNE/Public/NNEUtils/NNEBindingCreator.h


operator()

virtual void operator()(const FNNEDictBuffer &InBuffer) override

Visit operation for dictionary buffers.

Parameters

InBuffer – [in] The dictionary buffer to create bindings from

#DirectionNameTypeDescription
1InBufferconst FNNEDictBuffer &The dictionary buffer to create bindings from

Attributes: virtual

Source: Source/Schola/NNE/Public/NNEUtils/NNEBindingCreator.h

Implementation: Source/Schola/NNE/Private/NNEUtils/NNEBindingCreator.cpp


operator()

virtual void operator()(const FNNEBoxBuffer &InBuffer) override

Visit operation for box buffers.

Parameters

InBuffer – [in] The box buffer to create bindings from

#DirectionNameTypeDescription
1InBufferconst FNNEDictBuffer &The dictionary buffer to create bindings from

Attributes: virtual

Source: Source/Schola/NNE/Public/NNEUtils/NNEBindingCreator.h

Implementation: Source/Schola/NNE/Private/NNEUtils/NNEBindingCreator.cpp


operator()

virtual void operator()(const FNNEMultiBinaryBuffer &InBuffer) override

Visit operation for multi-binary buffers.

Parameters

InBuffer – [in] The multi-binary buffer to create bindings from

#DirectionNameTypeDescription
1InBufferconst FNNEDictBuffer &The dictionary buffer to create bindings from

Attributes: virtual

Source: Source/Schola/NNE/Public/NNEUtils/NNEBindingCreator.h

Implementation: Source/Schola/NNE/Private/NNEUtils/NNEBindingCreator.cpp


operator()

virtual void operator()(const FNNEDiscreteBuffer &InBuffer) override

Visit operation for discrete buffers.

Parameters

InBuffer – [in] The discrete buffer to create bindings from

#DirectionNameTypeDescription
1InBufferconst FNNEDictBuffer &The dictionary buffer to create bindings from

Attributes: virtual

Source: Source/Schola/NNE/Public/NNEUtils/NNEBindingCreator.h

Implementation: Source/Schola/NNE/Private/NNEUtils/NNEBindingCreator.cpp


operator()

virtual void operator()(const FNNEMultiDiscreteBuffer &InBuffer) override

Visit operation for multi-discrete buffers.

Parameters

InBuffer – [in] The multi-discrete buffer to create bindings from

#DirectionNameTypeDescription
1InBufferconst FNNEDictBuffer &The dictionary buffer to create bindings from

Attributes: virtual

Source: Source/Schola/NNE/Public/NNEUtils/NNEBindingCreator.h

Implementation: Source/Schola/NNE/Private/NNEUtils/NNEBindingCreator.cpp


Public Members

SymbolDetails
BufferReference to the buffer to create bindings from.
BindingsArray of tensor bindings to populate.
bErrorError flag indicating if binding creation failed.
IndexCurrent tensor index being processed.
TensorDescsArray of tensor descriptors from the neural network model.

Buffer

TInstancedStruct<FNNEPointBuffer> &Buffer

Reference to the buffer to create bindings from.


Bindings

TArray<UE::NNE::FTensorBindingCPU> &Bindings

Array of tensor bindings to populate.


bError

bool bError = false

Error flag indicating if binding creation failed.


Index

int Index = 0

Current tensor index being processed.


TensorDescs

TConstArrayView<UE::NNE::FTensorDesc> TensorDescs

Array of tensor descriptors from the neural network model.


Public Static Functions

SymbolDetails
CreateBindingsStatic utility function to create tensor bindings from a buffer.

CreateBindings

static inline bool
CreateBindings(const TInstancedStruct<FSpace> &InSpace,
TInstancedStruct<FNNEPointBuffer> &InBuffer,
TConstArrayView<UE::NNE::FTensorDesc> InTensorDescs,
TArray<UE::NNE::FTensorBindingCPU> &OutBindings)

Static utility function to create tensor bindings from a buffer.

Parameters

  • InSpace – [in] The space definition (currently unused but kept for consistency)

  • InBuffer – [in] The buffer to create bindings from

  • InTensorDescs – [in] The tensor descriptors from the model

  • OutBindings – [out] The array to populate with tensor bindings

Returns:

true if an error occurred, false on success

#DirectionNameTypeDescription
1InSpaceconst TInstancedStruct< FSpace > &The space definition (currently unused but kept for consistency)
2InBufferTInstancedStruct< FNNEPointBuffer > &The buffer to create bindings from
3InTensorDescsTConstArrayView< UE::NNE::FTensorDesc >The tensor descriptors from the model
4OutBindingsTArray< UE::NNE::FTensorBindingCPU > &The array to populate with tensor bindings

Attributes: inline, static

Source: Source/Schola/NNE/Public/NNEUtils/NNEBindingCreator.h