![]() |
Apparatus
Version 1.3.0
ECS data-driven workflow for Unreal Engine.
|
The conveyor belt consisting of subjects. More...
#include <Belt.h>
Public Types | |
enum | { InvalidSlotIndex = FBeltSlot::InvalidIndex } |
Public Member Functions | |
bool | IsLocked () const |
Is the belt currently locked? More... | |
EApparatusStatus | Lock (const FFilter &InFilter) const |
Lock the belt under a specific filter to become semi-immutable. More... | |
EApparatusStatus | Lock () const |
Add locks to the belt under the existing already locked filter. More... | |
EApparatusStatus | Unlock () const |
Unlock the belt to become mutable again. More... | |
int32 | IterableNum () const |
Get the current number of elements valid for iterating. More... | |
bool | IsSparse () const |
Is this a sparse belt allowing some empty detail spaces? More... | |
const FDetailmark & | GetDetailmark () const |
The detailmark of the belt. More... | |
const FFilter & | GetLockingFilter () const |
The locked filter of the belt. More... | |
EApparatusStatus | Expand (const FDetailmark &InDetailmark, const EBootFilter InBootFilter=EBootFilter::None) |
Expand a belt to accommodate the new detailmark. More... | |
int32 | Num () const |
The number of slots currently in the belt. More... | |
const FBeltSlot & | SlotAt (const int32 SlotIndex) const |
Get a belt slot by its index. More... | |
FBeltSlot & | SlotAt (const int32 SlotIndex) |
Get a belt slot by its index. More... | |
const FBeltSlot & | operator[] (const int32 SlotIndex) const |
Get a belt slot by its index. More... | |
FBeltSlot & | operator[] (const int32 SlotIndex) |
Get a belt slot by its index. More... | |
FBeltIt | begin (const FFilter &InFilter) |
Get the first slot for iterating with the. More... | |
FBeltIt | begin () |
Get the first slot for iterating with the currently locked filter. More... | |
FBeltIt | end () |
The ending iterator. More... | |
EApparatusStatus | Refresh (TScriptInterface< ISubjective > Subjective) |
Refresh a subjective within the belt. More... | |
EApparatusStatus | Refresh (TScriptInterface< ISubjective > Subjective, const TArray< class UDetail * > &InDetails) |
Refresh a subjective within the belt. More... | |
bool | Matches (const FFilter &Filter) const |
Check if the belt matches a filter. More... | |
Static Public Member Functions | |
static class UBelt * | New (UObject *Owner, const FDetailmark &InDetailmark) |
Create a new belt instance. More... | |
static class UBelt * | New (UObject *Owner, const FName &Name, const FDetailmark &InDetailmark) |
Create a new belt instance. More... | |
static class UBelt * | New (UObject *Owner, const FName &Name, const FDetailmark &InDetailmark, const EBootFilter BootFilter) |
Create a new belt instance. More... | |
Friends | |
struct | FBeltSlot |
struct | FBeltIt |
class | USubjectiveActorComponent |
class | USubjectiveUserWidget |
class | UDetail |
class | UMachine |
class | ISubjective |
The conveyor belt consisting of subjects.
|
inline |
Get the first slot for iterating with the currently locked filter.
Get the first slot for iterating with the.
InFilter | A filter to iterate with. |
|
inline |
The ending iterator.
EApparatusStatus UBelt::Expand | ( | const FDetailmark & | InDetailmark, |
const EBootFilter | InBootFilter = EBootFilter::None |
||
) |
Expand a belt to accommodate the new detailmark.
InDetailmark | The new detailmark to include. |
InBootFilter | A boot filter to include. |
|
inline |
The detailmark of the belt.
|
inline |
The locked filter of the belt.
This is an exact filter that should be matched for slots.
|
inline |
Is the belt currently locked?
|
inline |
Is this a sparse belt allowing some empty detail spaces?
|
inline |
Get the current number of elements valid for iterating.
|
inline |
Add locks to the belt under the existing already locked filter.
|
inline |
Lock the belt under a specific filter to become semi-immutable.
|
inline |
Check if the belt matches a filter.
|
static |
Create a new belt instance.
|
static |
Create a new belt instance.
|
static |
Create a new belt instance.
|
inline |
The number of slots currently in the belt.
Returns the un-buffered active count.
|
inline |
Get a belt slot by its index.
SlotIndex | The index of the belt slot. |
|
inline |
Get a belt slot by its index.
Constant version.
SlotIndex | The index of the belt slot. |
EApparatusStatus UBelt::Refresh | ( | TScriptInterface< ISubjective > | Subjective | ) |
Refresh a subjective within the belt.
Subjective | A subjective to refresh. |
EApparatusStatus UBelt::Refresh | ( | TScriptInterface< ISubjective > | Subjective, |
const TArray< class UDetail * > & | InDetails | ||
) |
Refresh a subjective within the belt.
Subjective | A subjective to refresh. |
InDetails | The list of new detail to refresh with. |
|
inline |
Get a belt slot by its index.
SlotIndex | The index of the belt slot. |
|
inline |
Get a belt slot by its index.
Constant version.
SlotIndex | The index of the belt slot. |
|
inline |
Unlock the belt to become mutable again.
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |