Apparatus Version 1.2.1
ECS data-driven workflow for Unreal Engine.
Public Types | Public Member Functions | Friends | List of all members
FBeltSlot Struct Reference

The belt slot, containing the cached details. More...

#include <BeltSlot.h>

Public Types

enum  { InvalidIndex = -1 , InvalidComboIndex = -1 }
 

Public Member Functions

 FBeltSlot ()
 The default invalid/uninitialized slot constructor. More...
 
class UBeltGetOwner () const
 Get the owning belt of the slot. More...
 
bool IsLocked () const
 Check if this is a slot in a currently locked belt. More...
 
int32 GetIndex () const
 Get the index of the slot in the belt. More...
 
struct FSubjectHandle GetSubject () const
 Get the subject of the slot. More...
 
TScriptInterface< class ISubjectiveGetSubjective () const
 Get the subjective of the slot. More...
 
void ResetDetails () const
 Clear all of the cached details in the slot, while actually maintaining a link to subjective itself (if any). More...
 
 ~FBeltSlot ()
 Deinitialize the belt slot. More...
 
bool IsPresent (const int32 DetailIndex)
 Does a detail at the specified index exist? More...
 
bool IsComboValid (const int32 ComboIndex) const
 Check if a combo is valid, i.e. More...
 
UDetailGetDetailAt (const int32 ComboIndex, const int32 DetailIndex) const
 Get the detail at a specified index according to the combination supplied. More...
 
UDetailGetDetail (const int32 ComboIndex, const TSubclassOf< UDetail > DetailClass) const
 Get the detail of a specific class according to the combination supplied. More...
 
bool FetchDetails ()
 Fetch the details from the current subjective. More...
 
void Expand ()
 Expand the slot according to a belt's detailmark. More...
 
bool IsViable () const
 Is this slot actually valid? More...
 
const struct FDetailmarkGetDetailmark () const
 The active detailmark of the slot, which is the same as its owning belt's. More...
 
 operator bool () const
 Is this slot actually valid? More...
 
bool operator== (const FBeltSlot &Other) const
 Compare two belt slots for equality. More...
 
bool operator!= (const FBeltSlot &Other) const
 Compare two belt slots for inequality. More...
 
EApparatusStatus Set (const FBeltSlot &InSlot)
 Set the slot as another one from the same belt. More...
 
FBeltSlotoperator= (const FBeltSlot &InSlot)
 Set the slot as another one from the same belt. More...
 

Friends

class USubjectiveActorComponent
 
class UBelt
 
struct FBeltIt
 
class TArray< FBeltSlot >
 

Detailed Description

The belt slot, containing the cached details.

A faster cache is used internally.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
InvalidIndex 

Invalid belt slot index.

InvalidComboIndex 

Invalid combination index.

Constructor & Destructor Documentation

◆ FBeltSlot()

FBeltSlot::FBeltSlot ( )
inline

The default invalid/uninitialized slot constructor.

◆ ~FBeltSlot()

FBeltSlot::~FBeltSlot ( )
inline

Deinitialize the belt slot.

Member Function Documentation

◆ Expand()

void FBeltSlot::Expand ( )
inline

Expand the slot according to a belt's detailmark.

◆ FetchDetails()

bool FBeltSlot::FetchDetails ( )

Fetch the details from the current subjective.

◆ GetDetail()

UDetail * FBeltSlot::GetDetail ( const int32  ComboIndex,
const TSubclassOf< UDetail DetailClass 
) const
inline

Get the detail of a specific class according to the combination supplied.

The detail index gets remapped to the current locked detailmark.

◆ GetDetailAt()

UDetail * FBeltSlot::GetDetailAt ( const int32  ComboIndex,
const int32  DetailIndex 
) const
inline

Get the detail at a specified index according to the combination supplied.

The detail index gets remapped to the current locked detailmark.

◆ GetDetailmark()

const FDetailmark & FBeltSlot::GetDetailmark ( ) const
inline

The active detailmark of the slot, which is the same as its owning belt's.

◆ GetIndex()

int32 FBeltSlot::GetIndex ( ) const
inline

Get the index of the slot in the belt.

Returns
An index of the slot within its belt.

◆ GetOwner()

class UBelt* FBeltSlot::GetOwner ( ) const
inline

Get the owning belt of the slot.

◆ GetSubject()

FSubjectHandle FBeltSlot::GetSubject ( ) const
inline

Get the subject of the slot.

◆ GetSubjective()

TScriptInterface< class ISubjective > FBeltSlot::GetSubjective ( ) const
inline

Get the subjective of the slot.

◆ IsComboValid()

bool FBeltSlot::IsComboValid ( const int32  ComboIndex) const

Check if a combo is valid, i.e.

has all the necessary details.

◆ IsLocked()

bool FBeltSlot::IsLocked ( ) const
inline

Check if this is a slot in a currently locked belt.

◆ IsPresent()

bool FBeltSlot::IsPresent ( const int32  DetailIndex)
inline

Does a detail at the specified index exist?

◆ IsViable()

bool FBeltSlot::IsViable ( ) const
inline

Is this slot actually valid?

◆ operator bool()

FBeltSlot::operator bool ( ) const
inline

Is this slot actually valid?

◆ operator!=()

bool FBeltSlot::operator!= ( const FBeltSlot Other) const
inline

Compare two belt slots for inequality.

◆ operator=()

FBeltSlot& FBeltSlot::operator= ( const FBeltSlot InSlot)
inline

Set the slot as another one from the same belt.

Parameters
InSlotThe slot to set as.

◆ operator==()

bool FBeltSlot::operator== ( const FBeltSlot Other) const
inline

Compare two belt slots for equality.

◆ ResetDetails()

void FBeltSlot::ResetDetails ( ) const
inline

Clear all of the cached details in the slot, while actually maintaining a link to subjective itself (if any).

Performs no memory deallocations.

◆ Set()

EApparatusStatus FBeltSlot::Set ( const FBeltSlot InSlot)
inline

Set the slot as another one from the same belt.

Parameters
InSlotThe slot to set as.
Returns
The status of the operation.

Friends And Related Function Documentation

◆ FBeltIt

friend struct FBeltIt
friend

◆ TArray< FBeltSlot >

friend class TArray< FBeltSlot >
friend

◆ UBelt

friend class UBelt
friend

◆ USubjectiveActorComponent

friend class USubjectiveActorComponent
friend

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