Apparatus Version 1.21
ECS data-oriented workflow for Unreal Engine.
Macros | Typedefs | Enumerations | Functions
Flagmark.h File Reference
#include "CoreMinimal.h"
#include "UObject/Class.h"
#include "More/EnumClassFlags.h"
#include "ApparatusStatus.h"
#include "Flagmark.generated.h"
Include dependency graph for Flagmark.h:
This graph shows which files directly or indirectly include this file:

Macros

#define SKIP_MACHINE_H
 
#define FLAGMARK_H_SKIPPED_MACHINE_H
 

Typedefs

using EFlagmarkType = __underlying_type(EFlagmark)
 

Enumerations

enum class  EFlagmarkBit : uint8 {
  Stale = 0x0 UMETA(Hidden) , Booted = 0x1 , Online = 0x2 , Editor = 0x3 UMETA(Hidden) ,
  DeferredDespawn = 0x4 UMETA(Hidden) , SystemLevelMax = DeferredDespawn UMETA(Hidden) , A = 0x5 , UMETA =(Hidden) = A ,
  B , C , D , E ,
  F , G , H , I ,
  J , K , L , M ,
  N , O , P , Q ,
  R , S , T , U ,
  V , W , X , Y ,
  Z , Max = Z UMETA(Hidden)
}
 Flagmark bit identifiers. More...
 
enum  EFlagmark {
  FM_None = 0x0 UMETA(DisplayName = "None", Hidden) , FM_Stale = 1 << (int)EFlagmarkBit::Stale UMETA(Hidden) , FM_Booted = 1 << (int)EFlagmarkBit::Booted UMETA(DisplayName = "Booted") , FM_Online = 1 << (int)EFlagmarkBit::Online UMETA(DisplayName = "Online") ,
  FM_Editor = 1 << (int)EFlagmarkBit::Editor UMETA(Hidden) , FM_DeferredDespawn = 1 << (int)EFlagmarkBit::DeferredDespawn UMETA(Hidden) , FM_AllSystemLevel = FM_Stale | FM_Booted | FM_Online | FM_Editor | FM_DeferredDespawn UMETA(Hidden) , FM_A = 1 << (int)EFlagmarkBit::A UMETA(DisplayName = "A") ,
  FM_B = 1 << (int)EFlagmarkBit::B UMETA(DisplayName = "B") , FM_C = 1 << (int)EFlagmarkBit::C UMETA(DisplayName = "C") , FM_D = 1 << (int)EFlagmarkBit::D UMETA(DisplayName = "D") , FM_E = 1 << (int)EFlagmarkBit::E UMETA(DisplayName = "E") ,
  FM_F = 1 << (int)EFlagmarkBit::F UMETA(DisplayName = "F") , FM_G = 1 << (int)EFlagmarkBit::G UMETA(DisplayName = "G") , FM_H = 1 << (int)EFlagmarkBit::H UMETA(DisplayName = "H") , FM_I = 1 << (int)EFlagmarkBit::I UMETA(DisplayName = "I") ,
  FM_J = 1 << (int)EFlagmarkBit::J UMETA(DisplayName = "J") , FM_K = 1 << (int)EFlagmarkBit::K UMETA(DisplayName = "K") , FM_L = 1 << (int)EFlagmarkBit::L UMETA(DisplayName = "L") , FM_M = 1 << (int)EFlagmarkBit::M UMETA(DisplayName = "M") ,
  FM_N = 1 << (int)EFlagmarkBit::N UMETA(DisplayName = "N") , FM_O = 1 << (int)EFlagmarkBit::O UMETA(DisplayName = "O") , FM_P = 1 << (int)EFlagmarkBit::P UMETA(DisplayName = "P") , FM_Q = 1 << (int)EFlagmarkBit::Q UMETA(DisplayName = "Q") ,
  FM_R = 1 << (int)EFlagmarkBit::R UMETA(DisplayName = "R") , FM_S = 1 << (int)EFlagmarkBit::S UMETA(DisplayName = "S") , FM_T = 1 << (int)EFlagmarkBit::T UMETA(DisplayName = "T") , FM_U = 1 << (int)EFlagmarkBit::U UMETA(DisplayName = "U") ,
  FM_V = 1 << (int)EFlagmarkBit::V UMETA(DisplayName = "V") , FM_W = 1 << (int)EFlagmarkBit::W UMETA(DisplayName = "W") , FM_X = 1 << (int)EFlagmarkBit::X UMETA(DisplayName = "X") , FM_Y = 1 << (int)EFlagmarkBit::Y UMETA(DisplayName = "Y") ,
  FM_Z = 1 << (int)EFlagmarkBit::Z UMETA(DisplayName = "Z") , FM_AllUserLevel , FM_All = FM_AllSystemLevel | FM_AllUserLevel UMETA(Hidden)
}
 The universal flagmark functionality. More...
 

Functions

APPARATUSRUNTIME_API UEnum * GetFlagmarkBitClass ()
 Get the boot flagmark bit class. More...
 
FString ToString (const EFlagmarkBit FlagmarkBit)
 Convert a flagmark bit enum variable to a string. More...
 
bool IsSystemLevel (const EFlagmarkBit Flag)
 Check if the flag is a system one and not allowed to be set by the user. More...
 
bool IsUserLevel (const EFlagmarkBit Flag)
 Check if the flag is a user one and is allowed to be set by the user. More...
 
EFlagmark FlagToEnum (const EFlagmarkBit Flag)
 
EFlagmarkoperator-= (EFlagmark &Lhs, const EFlagmark Rhs)
 
constexpr EFlagmark operator- (EFlagmark Lhs, const EFlagmark Rhs)
 
EFlagmarkoperator|= (EFlagmark &Lhs, const EFlagmarkBit Rhs)
 
EFlagmarkoperator&= (EFlagmark &Lhs, const EFlagmarkBit Rhs)
 
EFlagmarkoperator^= (EFlagmark &Lhs, const EFlagmarkBit Rhs)
 
constexpr EFlagmark operator| (EFlagmark Lhs, const EFlagmarkBit Rhs)
 
constexpr EFlagmark operator& (EFlagmark Lhs, const EFlagmarkBit Rhs)
 
constexpr EFlagmark operator^ (EFlagmark Lhs, const EFlagmarkBit Rhs)
 
EFlagmarkoperator+= (EFlagmark &Lhs, const EFlagmarkBit Rhs)
 
EFlagmarkoperator-= (EFlagmark &Lhs, const EFlagmarkBit Rhs)
 
constexpr EFlagmark operator- (EFlagmark Lhs, const EFlagmarkBit Rhs)
 
constexpr EFlagmark operator+ (EFlagmark Lhs, const EFlagmarkBit Rhs)
 
constexpr EFlagmark operator| (const EFlagmarkBit Lhs, const EFlagmarkBit Rhs)
 
constexpr EFlagmark operator& (const EFlagmarkBit Lhs, const EFlagmarkBit Rhs)
 
APPARATUSRUNTIME_API UEnum * GetFlagmarkClass ()
 Get the boot filter class. More...
 
FString ToString (const EFlagmark Flagmark)
 Convert a flagmark enum variable to a string. More...
 
uint32 GetTypeHash (const EFlagmark Flagmark)
 Hash the boot filter. More...
 
FArchive & operator<< (FArchive &Archive, EFlagmark &Flagmark)
 Serialize a boot filter to an archive. More...
 
bool Matches (const EFlagmark Flagmark, const EFlagmark Filter)
 Check if the flagmark matches a flagmark. More...
 
bool Matches (const EFlagmark Flagmark, const EFlagmark Filter, const EFlagmark ExcludingFilter)
 Check if the flagmark matches an including and excluding flagmark. More...
 

Macro Definition Documentation

◆ FLAGMARK_H_SKIPPED_MACHINE_H

#define FLAGMARK_H_SKIPPED_MACHINE_H

◆ SKIP_MACHINE_H

#define SKIP_MACHINE_H

Typedef Documentation

◆ EFlagmarkType

using EFlagmarkType = __underlying_type( EFlagmark )

Enumeration Type Documentation

◆ EFlagmark

enum EFlagmark

The universal flagmark functionality.

The flagmarks are checked during the iterating procedure, but the checks themselves are pretty trivial.

Enumerator
FM_None 

No flags set.

FM_Stale 

(Re)moved subject.

FM_Booted 

An initialized subject.

FM_Online 

Networked subject.

FM_Editor 

Editor-spawned subject.

FM_DeferredDespawn 

Participating in a deferred removal.

FM_AllSystemLevel 

A mask with all the system flags set.

FM_A 

User flag A.

FM_B 

User flag B.

FM_C 

User flag C.

FM_D 

User flag D.

FM_E 

User flag E.

FM_F 

User flag F.

FM_G 

User flag G.

FM_H 

User flag H.

FM_I 

User flag I.

FM_J 

User flag J.

FM_K 

User flag K.

FM_L 

User flag L.

FM_M 

User flag M.

FM_N 

User flag N.

FM_O 

User flag O.

FM_P 

User flag P.

FM_Q 

User flag Q.

FM_R 

User flag R.

FM_S 

User flag S.

FM_T 

User flag T.

FM_U 

User flag U.

FM_V 

User flag V.

FM_W 

User flag W.

FM_X 

User flag X.

FM_Y 

User flag Y.

FM_Z 

User flag Z.

FM_AllUserLevel 

A mask with all the user-level flags set.

FM_All 

A mask with all the flags set.

◆ EFlagmarkBit

enum class EFlagmarkBit : uint8
strong

Flagmark bit identifiers.

Enumerator
Stale 

Subject (re)moved from the chunk.

Booted 

An initialized subject.

Online 

Networked subject.

Editor 

Editor-spawned subject.

DeferredDespawn 

Participating in a deferred entity removal.

SystemLevelMax 

The maximum system-level bit.

User flag A.

UMETA 

The first user-level flag available (A).

User flag B.

User flag C.

User flag D.

User flag E.

User flag F.

User flag G.

User flag H.

User flag I.

User flag J.

User flag K.

User flag L.

User flag M.

User flag N.

User flag O.

User flag P.

User flag Q.

User flag R.

User flag S.

User flag T.

User flag U.

User flag V.

User flag W.

User flag X.

User flag Y.

User flag Z.

Max 

The maximum flag available.

Seems like sign-bit flag is not supported.

Function Documentation

◆ FlagToEnum()

EFlagmark FlagToEnum ( const EFlagmarkBit  Flag)
inline

◆ GetFlagmarkBitClass()

APPARATUSRUNTIME_API UEnum * GetFlagmarkBitClass ( )
inline

Get the boot flagmark bit class.

◆ GetFlagmarkClass()

APPARATUSRUNTIME_API UEnum * GetFlagmarkClass ( )
inline

Get the boot filter class.

◆ GetTypeHash()

uint32 GetTypeHash ( const EFlagmark  Flagmark)
inline

Hash the boot filter.

◆ IsSystemLevel()

bool IsSystemLevel ( const EFlagmarkBit  Flag)
inline

Check if the flag is a system one and not allowed to be set by the user.

Parameters
FlagThe flag to examine.
Returns
The state of examination.

◆ IsUserLevel()

bool IsUserLevel ( const EFlagmarkBit  Flag)
inline

Check if the flag is a user one and is allowed to be set by the user.

Parameters
FlagThe flag to examine.
Returns
The state of examination.

◆ Matches() [1/2]

bool Matches ( const EFlagmark  Flagmark,
const EFlagmark  Filter 
)
inline

Check if the flagmark matches a flagmark.

◆ Matches() [2/2]

bool Matches ( const EFlagmark  Flagmark,
const EFlagmark  Filter,
const EFlagmark  ExcludingFilter 
)
inline

Check if the flagmark matches an including and excluding flagmark.

◆ operator&() [1/2]

constexpr EFlagmark operator& ( const EFlagmarkBit  Lhs,
const EFlagmarkBit  Rhs 
)
inlineconstexpr

◆ operator&() [2/2]

constexpr EFlagmark operator& ( EFlagmark  Lhs,
const EFlagmarkBit  Rhs 
)
inlineconstexpr

◆ operator&=()

EFlagmark & operator&= ( EFlagmark Lhs,
const EFlagmarkBit  Rhs 
)
inline

◆ operator+()

constexpr EFlagmark operator+ ( EFlagmark  Lhs,
const EFlagmarkBit  Rhs 
)
inlineconstexpr

◆ operator+=()

EFlagmark & operator+= ( EFlagmark Lhs,
const EFlagmarkBit  Rhs 
)
inline

◆ operator-() [1/2]

constexpr EFlagmark operator- ( EFlagmark  Lhs,
const EFlagmark  Rhs 
)
inlineconstexpr

◆ operator-() [2/2]

constexpr EFlagmark operator- ( EFlagmark  Lhs,
const EFlagmarkBit  Rhs 
)
inlineconstexpr

◆ operator-=() [1/2]

EFlagmark & operator-= ( EFlagmark Lhs,
const EFlagmark  Rhs 
)
inline

◆ operator-=() [2/2]

EFlagmark & operator-= ( EFlagmark Lhs,
const EFlagmarkBit  Rhs 
)
inline

◆ operator<<()

FArchive & operator<< ( FArchive &  Archive,
EFlagmark Flagmark 
)
inline

Serialize a boot filter to an archive.

◆ operator^()

constexpr EFlagmark operator^ ( EFlagmark  Lhs,
const EFlagmarkBit  Rhs 
)
inlineconstexpr

◆ operator^=()

EFlagmark & operator^= ( EFlagmark Lhs,
const EFlagmarkBit  Rhs 
)
inline

◆ operator|() [1/2]

constexpr EFlagmark operator| ( const EFlagmarkBit  Lhs,
const EFlagmarkBit  Rhs 
)
inlineconstexpr

◆ operator|() [2/2]

constexpr EFlagmark operator| ( EFlagmark  Lhs,
const EFlagmarkBit  Rhs 
)
inlineconstexpr

◆ operator|=()

EFlagmark & operator|= ( EFlagmark Lhs,
const EFlagmarkBit  Rhs 
)
inline

◆ ToString() [1/2]

FString ToString ( const EFlagmark  Flagmark)
inline

Convert a flagmark enum variable to a string.

◆ ToString() [2/2]

FString ToString ( const EFlagmarkBit  FlagmarkBit)
inline

Convert a flagmark bit enum variable to a string.