BA Replication - FFastArraySerializer
tip
The Struct 'FBA_FFA_ObjectArray' encapsulate the FFastArraySerializer. It hosts a TArray<FBA_FFA_Object<, a reference to the owning Actor (as data channel for replication) and some helper structure to find entries without screening the full array. The functions and events of this struct are C++ only, as the ReplicationArray will encapsulate and enrich these for Blueprint usage.
Events
Events of FBA_FFA_ObjectArray
DECLARE_DELEGATE_OneParam(FEntryChange, FBA_FFA_Object /* Entry */)
DECLARE_DELEGATE_OneParam(FArrayCountChange, int32 /* Entry */)
FEntryChange OnEntryPreReplicatedRemove;
FEntryChange OnEntryPostReplicatedAdd;
FEntryChange OnEntryPostReplicatedChange;
FArrayCountChange OnEntryPostReplicatedReceive;
Public functions (not exposed to BP)
Public functions of FBA_FFA_ObjectArray
bool AddEntry(UObject* StorageObject, FGuid InstanceGuid, FString ReadableIdentifier);
bool CheckForSubobjectListSupport(FBA_FFA_Object& Entry);
void ForEachChildren(const TFunctionRef<void(FBA_FFA_Object)>& Func);
bool RemoveEntry(FGuid InstanceGuid, UObject*& DeletedEntry);
bool GetEntryByGuid(FGuid Guid, FBA_FFA_Object& ResultEntry);
bool GetEntryByIdentifier(FString Identifier, FBA_FFA_Object& ResultEntry);
void Clear();
void SortByIndex();
void SortByPropertyName(const FString PropertyName, TArray<FString> SortableTypesArray);
tip
Access
- Source code https://github.com/DeveloperBastian/BA_ReplicationArray
- a video tutorial https://youtu.be/rrGx6bwwM6U (german version)