UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
IAnalyticsPropertyStore Class Referenceabstract

#include <IAnalyticsPropertyStore.h>

+ Inheritance diagram for IAnalyticsPropertyStore:

Public Types

enum class  EStatusCode : uint32 { Success , NotFound , BadType , Declined }
 

Public Member Functions

virtual ~IAnalyticsPropertyStore ()=default
 
virtual uint32 Num () const =0
 
virtual bool Contains (const FString &Key) const =0
 
virtual bool Remove (const FString &Key)=0
 
virtual void RemoveAll ()=0
 
virtual EStatusCode Set (const FString &Key, int32 Value)=0
 
virtual EStatusCode Set (const FString &Key, uint32 Value)=0
 
virtual EStatusCode Set (const FString &Key, int64 Value)=0
 
virtual EStatusCode Set (const FString &Key, uint64 Value)=0
 
virtual EStatusCode Set (const FString &Key, float Value)=0
 
virtual EStatusCode Set (const FString &Key, double Value)=0
 
virtual EStatusCode Set (const FString &Key, bool Value)=0
 
virtual EStatusCode Set (const FString &Key, const FString &Value, uint32 CharCountCapacityHint=0)=0
 
virtual EStatusCode Set (const FString &Key, const FDateTime &Value)=0
 
virtual EStatusCode Set (const FString &Key, int32 Value, const TFunction< bool(const int32 *, const int32 &)> &ConditionFn)=0
 
virtual EStatusCode Set (const FString &Key, uint32 Value, const TFunction< bool(const uint32 *, const uint32 &)> &ConditionFn)=0
 
virtual EStatusCode Set (const FString &Key, int64 Value, const TFunction< bool(const int64 *, const int64 &)> &ConditionFn)=0
 
virtual EStatusCode Set (const FString &Key, uint64 Value, const TFunction< bool(const uint64 *, const uint64 &)> &ConditionFn)=0
 
virtual EStatusCode Set (const FString &Key, float Value, const TFunction< bool(const float *, const float &)> &ConditionFn)=0
 
virtual EStatusCode Set (const FString &Key, double Value, const TFunction< bool(const double *, const double &)> &ConditionFn)=0
 
virtual EStatusCode Set (const FString &Key, bool Value, const TFunction< bool(const bool *, const bool &)> &ConditionFn)=0
 
virtual EStatusCode Set (const FString &Key, const FString &Value, const TFunction< bool(const FString *, const FString &)> &ConditionFn)=0
 
virtual EStatusCode Set (const FString &Key, const FDateTime &Value, const TFunction< bool(const FDateTime *, const FDateTime &)> &ConditionFn)=0
 
virtual EStatusCode Update (const FString &Key, const TFunction< bool(int32 &)> &UpdateFn)=0
 
virtual EStatusCode Update (const FString &Key, const TFunction< bool(uint32 &)> &UpdateFn)=0
 
virtual EStatusCode Update (const FString &Key, const TFunction< bool(int64 &)> &UpdateFn)=0
 
virtual EStatusCode Update (const FString &Key, const TFunction< bool(uint64 &)> &UpdateFn)=0
 
virtual EStatusCode Update (const FString &Key, const TFunction< bool(float &)> &UpdateFn)=0
 
virtual EStatusCode Update (const FString &Key, const TFunction< bool(double &)> &UpdateFn)=0
 
virtual EStatusCode Update (const FString &Key, const TFunction< bool(bool &)> &UpdateFn)=0
 
virtual EStatusCode Update (const FString &Key, const TFunction< bool(FString &)> &UpdateFn)=0
 
virtual EStatusCode Update (const FString &Key, const TFunction< bool(FDateTime &)> &UpdateFn)=0
 
virtual EStatusCode Get (const FString &Key, int32 &OutValue) const =0
 
virtual EStatusCode Get (const FString &Key, uint32 &OutValue) const =0
 
virtual EStatusCode Get (const FString &Key, int64 &OutValue) const =0
 
virtual EStatusCode Get (const FString &Key, uint64 &OutValue) const =0
 
virtual EStatusCode Get (const FString &Key, float &OutValue) const =0
 
virtual EStatusCode Get (const FString &Key, double &OutValue) const =0
 
virtual EStatusCode Get (const FString &Key, bool &OutValue) const =0
 
virtual EStatusCode Get (const FString &Key, FString &OutValue) const =0
 
virtual EStatusCode Get (const FString &Key, FDateTime &OutValue) const =0
 
virtual void VisitAll (const TFunction< void(FAnalyticsEventAttribute &&)> &VisitFn) const =0
 
virtual bool Flush (bool bAsync=false, const FTimespan &Timeout=FTimespan::MaxValue())=0
 

Detailed Description

Implements a fast type safe key/value database to store analytics properties collected during a session.

Member Enumeration Documentation

◆ EStatusCode

The list of store operation outcome.

Enumerator
Success 

The operation terminated sucessfully.

NotFound 

The operation failed because the key could not be found.

BadType 

The operation failed because the key value provided did not match the currently stored value.

Declined 

A conditional operation failed because it was declined by the caller (during a callback).

Constructor & Destructor Documentation

◆ ~IAnalyticsPropertyStore()

virtual IAnalyticsPropertyStore::~IAnalyticsPropertyStore ( )
virtualdefault

Member Function Documentation

◆ Contains()

virtual bool IAnalyticsPropertyStore::Contains ( const FString &  Key) const
pure virtual

Returns true if the store contains the specified key.

Implemented in FAnalyticsPropertyStore.

◆ Flush()

virtual bool IAnalyticsPropertyStore::Flush ( bool  bAsync = false,
const FTimespan Timeout = FTimespan::MaxValue() 
)
pure virtual

Flushes cached values to persistent storage.

Parameters
bAsyncWhether the data in flushed in a background thread or in the calling thread.
TimeoutMaximum time to wait before the flush starts (synchronous) or get scheduled (asynchronous). FTimespan::Zero() means no waiting.
Returns
True if the flush was executed (synchronous) or scheduled (asynchronous), false if the operation timed out.

Implemented in FAnalyticsPropertyStore.

◆ Get() [1/9]

virtual EStatusCode IAnalyticsPropertyStore::Get ( const FString &  Key,
bool OutValue 
) const
pure virtual

Implemented in FAnalyticsPropertyStore.

◆ Get() [2/9]

virtual EStatusCode IAnalyticsPropertyStore::Get ( const FString &  Key,
double OutValue 
) const
pure virtual

Implemented in FAnalyticsPropertyStore.

◆ Get() [3/9]

virtual EStatusCode IAnalyticsPropertyStore::Get ( const FString &  Key,
FDateTime OutValue 
) const
pure virtual

Implemented in FAnalyticsPropertyStore.

◆ Get() [4/9]

virtual EStatusCode IAnalyticsPropertyStore::Get ( const FString &  Key,
float OutValue 
) const
pure virtual

Implemented in FAnalyticsPropertyStore.

◆ Get() [5/9]

virtual EStatusCode IAnalyticsPropertyStore::Get ( const FString &  Key,
FString &  OutValue 
) const
pure virtual

Implemented in FAnalyticsPropertyStore.

◆ Get() [6/9]

virtual EStatusCode IAnalyticsPropertyStore::Get ( const FString &  Key,
int32 OutValue 
) const
pure virtual

Reads the specified key value from the store.

Parameters
KeyThe name of the property to read.
OutValueThe value of the property if the function returns EStatusCode::Success, left unchanged otherwise.
Returns
One of the following code

Implemented in FAnalyticsPropertyStore.

◆ Get() [7/9]

virtual EStatusCode IAnalyticsPropertyStore::Get ( const FString &  Key,
int64 OutValue 
) const
pure virtual

Implemented in FAnalyticsPropertyStore.

◆ Get() [8/9]

virtual EStatusCode IAnalyticsPropertyStore::Get ( const FString &  Key,
uint32 OutValue 
) const
pure virtual

Implemented in FAnalyticsPropertyStore.

◆ Get() [9/9]

virtual EStatusCode IAnalyticsPropertyStore::Get ( const FString &  Key,
uint64 OutValue 
) const
pure virtual

Implemented in FAnalyticsPropertyStore.

◆ Num()

virtual uint32 IAnalyticsPropertyStore::Num ( ) const
pure virtual

Returns the number of elements in the store.

Implemented in FAnalyticsPropertyStore.

◆ Remove()

virtual bool IAnalyticsPropertyStore::Remove ( const FString &  Key)
pure virtual

Removes the specified key from the store.

Returns
true if the key was removed.

Implemented in FAnalyticsPropertyStore.

◆ RemoveAll()

virtual void IAnalyticsPropertyStore::RemoveAll ( )
pure virtual

Removes all existing keys from the store.

Implemented in FAnalyticsPropertyStore.

◆ Set() [1/18]

virtual EStatusCode IAnalyticsPropertyStore::Set ( const FString &  Key,
bool  Value 
)
pure virtual

Implemented in FAnalyticsPropertyStore.

◆ Set() [2/18]

virtual EStatusCode IAnalyticsPropertyStore::Set ( const FString &  Key,
bool  Value,
const TFunction< bool(const bool *, const bool &)> &  ConditionFn 
)
pure virtual

Implemented in FAnalyticsPropertyStore.

◆ Set() [3/18]

virtual EStatusCode IAnalyticsPropertyStore::Set ( const FString &  Key,
const FDateTime Value 
)
pure virtual

Implemented in FAnalyticsPropertyStore.

◆ Set() [4/18]

virtual EStatusCode IAnalyticsPropertyStore::Set ( const FString &  Key,
const FDateTime Value,
const TFunction< bool(const FDateTime *, const FDateTime &)> &  ConditionFn 
)
pure virtual

Implemented in FAnalyticsPropertyStore.

◆ Set() [5/18]

virtual EStatusCode IAnalyticsPropertyStore::Set ( const FString &  Key,
const FString &  Value,
const TFunction< bool(const FString *, const FString &)> &  ConditionFn 
)
pure virtual

Implemented in FAnalyticsPropertyStore.

◆ Set() [6/18]

virtual EStatusCode IAnalyticsPropertyStore::Set ( const FString &  Key,
const FString &  Value,
uint32  CharCountCapacityHint = 0 
)
pure virtual

Implemented in FAnalyticsPropertyStore.

◆ Set() [7/18]

virtual EStatusCode IAnalyticsPropertyStore::Set ( const FString &  Key,
double  Value 
)
pure virtual

Implemented in FAnalyticsPropertyStore.

◆ Set() [8/18]

virtual EStatusCode IAnalyticsPropertyStore::Set ( const FString &  Key,
double  Value,
const TFunction< bool(const double *, const double &)> &  ConditionFn 
)
pure virtual

Implemented in FAnalyticsPropertyStore.

◆ Set() [9/18]

virtual EStatusCode IAnalyticsPropertyStore::Set ( const FString &  Key,
float  Value 
)
pure virtual

Implemented in FAnalyticsPropertyStore.

◆ Set() [10/18]

virtual EStatusCode IAnalyticsPropertyStore::Set ( const FString &  Key,
float  Value,
const TFunction< bool(const float *, const float &)> &  ConditionFn 
)
pure virtual

Implemented in FAnalyticsPropertyStore.

◆ Set() [11/18]

virtual EStatusCode IAnalyticsPropertyStore::Set ( const FString &  Key,
int32  Value 
)
pure virtual

Adds or updates the specified key/value pair. If the key doesn't exist, the key/value pair is added. If the key already exists, the value is updated if the stored value and the specified value types match.

Parameters
KeyThe property name to add or update.
ValueThe property value to add or update.
Returns
EStatusCode::Success if the key was added or updated, EStatusCode::BadType if the value type did not match the current value type.

Implemented in FAnalyticsPropertyStore.

◆ Set() [12/18]

virtual EStatusCode IAnalyticsPropertyStore::Set ( const FString &  Key,
int32  Value,
const TFunction< bool(const int32 *, const int32 &)> &  ConditionFn 
)
pure virtual

Conditionnnaly adds or updates the specified key/value pair. The operation is atomic from the caller perspective. The function reads the actual value (if it exists), invoke the ConditionFn callback and write the value back if the condition function returns true. If the key doesn't exist, the actual value passed back to the condition function is null. If the condition function returns true, the proposed value is set, otherwise, the operation is declined and the store remains unchanged.

Parameters
KeyThe name of the property to add or update.
ValueThe value proposed. This value is passed as the second parameter to the ConditionFn callback.
ConditionFnFunction invoked back with the actual value and the proposed value to let the caller decide whether the proposed value should be set or not. If the callback function returns true, the proposed value is added/updated, otherwise, nothing changes.
Returns
One of the following code

Implemented in FAnalyticsPropertyStore.

◆ Set() [13/18]

virtual EStatusCode IAnalyticsPropertyStore::Set ( const FString &  Key,
int64  Value 
)
pure virtual

Implemented in FAnalyticsPropertyStore.

◆ Set() [14/18]

virtual EStatusCode IAnalyticsPropertyStore::Set ( const FString &  Key,
int64  Value,
const TFunction< bool(const int64 *, const int64 &)> &  ConditionFn 
)
pure virtual

Implemented in FAnalyticsPropertyStore.

◆ Set() [15/18]

virtual EStatusCode IAnalyticsPropertyStore::Set ( const FString &  Key,
uint32  Value 
)
pure virtual

Implemented in FAnalyticsPropertyStore.

◆ Set() [16/18]

virtual EStatusCode IAnalyticsPropertyStore::Set ( const FString &  Key,
uint32  Value,
const TFunction< bool(const uint32 *, const uint32 &)> &  ConditionFn 
)
pure virtual

Implemented in FAnalyticsPropertyStore.

◆ Set() [17/18]

virtual EStatusCode IAnalyticsPropertyStore::Set ( const FString &  Key,
uint64  Value 
)
pure virtual

Implemented in FAnalyticsPropertyStore.

◆ Set() [18/18]

virtual EStatusCode IAnalyticsPropertyStore::Set ( const FString &  Key,
uint64  Value,
const TFunction< bool(const uint64 *, const uint64 &)> &  ConditionFn 
)
pure virtual

Implemented in FAnalyticsPropertyStore.

◆ Update() [1/9]

virtual EStatusCode IAnalyticsPropertyStore::Update ( const FString &  Key,
const TFunction< bool(bool &)> &  UpdateFn 
)
pure virtual

Implemented in FAnalyticsPropertyStore.

◆ Update() [2/9]

virtual EStatusCode IAnalyticsPropertyStore::Update ( const FString &  Key,
const TFunction< bool(double &)> &  UpdateFn 
)
pure virtual

Implemented in FAnalyticsPropertyStore.

◆ Update() [3/9]

virtual EStatusCode IAnalyticsPropertyStore::Update ( const FString &  Key,
const TFunction< bool(FDateTime &)> &  UpdateFn 
)
pure virtual

Implemented in FAnalyticsPropertyStore.

◆ Update() [4/9]

virtual EStatusCode IAnalyticsPropertyStore::Update ( const FString &  Key,
const TFunction< bool(float &)> &  UpdateFn 
)
pure virtual

Implemented in FAnalyticsPropertyStore.

◆ Update() [5/9]

virtual EStatusCode IAnalyticsPropertyStore::Update ( const FString &  Key,
const TFunction< bool(FString &)> &  UpdateFn 
)
pure virtual

Implemented in FAnalyticsPropertyStore.

◆ Update() [6/9]

virtual EStatusCode IAnalyticsPropertyStore::Update ( const FString &  Key,
const TFunction< bool(int32 &)> &  UpdateFn 
)
pure virtual

Updates an exiting value. The operation is atomic from the caller perspective. The function reads the actual value and invoke UpdateFn callback with the actual value. The callback can update the actual value or decline the operation. If the key is not found, the callback is not invoked.

Parameters
KeyThe name of the key to update.
UpdateFnThe function to invoke, passing the actual value.
Returns
One of the following code

Implemented in FAnalyticsPropertyStore.

◆ Update() [7/9]

virtual EStatusCode IAnalyticsPropertyStore::Update ( const FString &  Key,
const TFunction< bool(int64 &)> &  UpdateFn 
)
pure virtual

Implemented in FAnalyticsPropertyStore.

◆ Update() [8/9]

virtual EStatusCode IAnalyticsPropertyStore::Update ( const FString &  Key,
const TFunction< bool(uint32 &)> &  UpdateFn 
)
pure virtual

Implemented in FAnalyticsPropertyStore.

◆ Update() [9/9]

virtual EStatusCode IAnalyticsPropertyStore::Update ( const FString &  Key,
const TFunction< bool(uint64 &)> &  UpdateFn 
)
pure virtual

Implemented in FAnalyticsPropertyStore.

◆ VisitAll()

virtual void IAnalyticsPropertyStore::VisitAll ( const TFunction< void(FAnalyticsEventAttribute &&)> &  VisitFn) const
pure virtual

Iterates the keys currently stored and invokes the visitor function for each key, converting the value to its string representation.

Parameters
VisitFnThe callback invoked for each key/value pair visited.

Implemented in FAnalyticsPropertyStore.


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