Apparatus Version 1.23
ECS data-oriented workflow for Unreal Engine.
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | Static Public Attributes | List of all members
FCommonChain::TSegment< bSolid > Struct Template Reference

The common functionality for a single iterable entry within the chain. More...

#include <CommonChain.h>

Public Member Functions

UChunkGetChunk () const
 Get the chunk of the segment (if any).
 
UBeltGetBelt () const
 Get the belt of the segment (if any).
 
TScriptInterface< IIterableGetIterable () const
 Get the sequence of the segment.
 
EApparatusStatus Lock () const
 Lock the segment by locking its iterable.
 
EApparatusStatus Unlock () const
 Unlock the segment by unlocking its target iterable.
 
bool IsLocked () const
 Check if the segment is currently locked.
 
int32 IterableNum () const
 The current number of iterable slots within the chain.
 
TSegmentoperator= (TSegment &&InSegment)
 Move-assign a segment.
 
TSegmentoperator= (const TSegment &InSegment)
 Copy-assign a segment.
 
 TSegment ()
 Default constructor.
 
 TSegment (UObject *const InSequence)
 Construct a new chain segment for a sequence.
 
 TSegment (TSegment &&InSegment)
 Move-construct a new instance of segment.
 
 TSegment (const TSegment &InSegment)
 Copy-construct a new chain segment.
 
 ~TSegment ()
 Destroy the segment.
 

Public Attributes

TWeakInterfacePtr< IIterableIterable = nullptr
 A chunk or a belt of this segment.
 
bool bLocked = false
 Was the iterable locked by this segment?
 

Static Public Attributes

static constexpr bool IsSolid = bSolid
 Is the segment a solid-locking one.
 

Detailed Description

template<bool bSolid>
struct FCommonChain::TSegment< bSolid >

The common functionality for a single iterable entry within the chain.

Template Parameters
bSolidIs the segment a solid-locking one?

Constructor & Destructor Documentation

◆ TSegment() [1/4]

template<bool bSolid>
FCommonChain::TSegment< bSolid >::TSegment ( )
inline

Default constructor.

◆ TSegment() [2/4]

template<bool bSolid>
FCommonChain::TSegment< bSolid >::TSegment ( UObject *const  InSequence)
inline

Construct a new chain segment for a sequence.

◆ TSegment() [3/4]

template<bool bSolid>
FCommonChain::TSegment< bSolid >::TSegment ( TSegment< bSolid > &&  InSegment)
inline

Move-construct a new instance of segment.

Parameters
InSegmentA segment to move.

◆ TSegment() [4/4]

template<bool bSolid>
FCommonChain::TSegment< bSolid >::TSegment ( const TSegment< bSolid > &  InSegment)
inline

Copy-construct a new chain segment.

Parameters
InSegmentA segment to copy.

◆ ~TSegment()

template<bool bSolid>
FCommonChain::TSegment< bSolid >::~TSegment ( )
inline

Destroy the segment.

Member Function Documentation

◆ GetBelt()

template<bool bSolid>
UBelt * FCommonChain::TSegment< bSolid >::GetBelt ( ) const
inline

Get the belt of the segment (if any).

◆ GetChunk()

template<bool bSolid>
UChunk * FCommonChain::TSegment< bSolid >::GetChunk ( ) const
inline

Get the chunk of the segment (if any).

◆ GetIterable()

template<bool bSolid>
TScriptInterface< IIterable > FCommonChain::TSegment< bSolid >::GetIterable ( ) const
inline

Get the sequence of the segment.

◆ IsLocked()

template<bool bSolid>
bool FCommonChain::TSegment< bSolid >::IsLocked ( ) const
inline

Check if the segment is currently locked.

◆ IterableNum()

template<bool bSolid>
int32 FCommonChain::TSegment< bSolid >::IterableNum ( ) const
inline

The current number of iterable slots within the chain.

Note
The flagmark matching is performed iterating-time, so its effect is not present within this count.

◆ Lock()

template<bool bSolid>
EApparatusStatus FCommonChain::TSegment< bSolid >::Lock ( ) const
inline

Lock the segment by locking its iterable.

Returns
The status of the operation.

◆ operator=() [1/2]

template<bool bSolid>
TSegment & FCommonChain::TSegment< bSolid >::operator= ( const TSegment< bSolid > &  InSegment)
inline

Copy-assign a segment.

◆ operator=() [2/2]

template<bool bSolid>
TSegment & FCommonChain::TSegment< bSolid >::operator= ( TSegment< bSolid > &&  InSegment)
inline

Move-assign a segment.

Parameters
InSegmentA segment to move.

◆ Unlock()

template<bool bSolid>
EApparatusStatus FCommonChain::TSegment< bSolid >::Unlock ( ) const
inline

Unlock the segment by unlocking its target iterable.

Returns
The status of the operation.

Member Data Documentation

◆ bLocked

template<bool bSolid>
bool FCommonChain::TSegment< bSolid >::bLocked = false
mutable

Was the iterable locked by this segment?

◆ IsSolid

template<bool bSolid>
constexpr bool FCommonChain::TSegment< bSolid >::IsSolid = bSolid
staticconstexpr

Is the segment a solid-locking one.

◆ Iterable

template<bool bSolid>
TWeakInterfacePtr<IIterable> FCommonChain::TSegment< bSolid >::Iterable = nullptr

A chunk or a belt of this segment.


The documentation for this struct was generated from the following file: