class MAGES::Analytics::MAGESAnalytics

Overview

The MAGES analytics module implementation. More…

class MAGESAnalytics: public MAGES::AnalyticsModule
{
public:
    // enums

    enum ScoringMergePolicy;

    // properties

    float SuccessThreshold;
    GameObject SessionOverviewPrefab;
    bool RuntimeAnalyticsNotifications;
    ScoringMergePolicy ActionScoringMergePolicy;
    Dictionary Queries;
    Dictionary Events;
    JObject ExportedData;
    MAGESAnalyticsRuntime AnalyticsRuntime;
    override bool UploadToCloud;
    UnityEvent OnEventTriggered;
    UnityEvent OnObjectiveProcessed;
    UnityEvent OnErrorTriggered;
    UnityEvent OnScoreInitialized;
    UnityEvent OnScoreChanged;
    UnityEvent OnAnalyticsExportedEvent;

    // methods

    override void InitializeTimer();
    override void InvalidateTimer();
    override double GetTimeSinceStartUp();
    override double GetRealTimeSinceStartUp();
    override void Startup();
    override void Shutdown();
    override TEvent AddEvent< TEvent >(string name);
    override TQuery AddQuery< TQuery >(string name);
    override void RemoveEvent< TEvent >(string name);
    override void RemoveQuery< TQuery >(string name);
    override TEvent GetEvent< TEvent >(string name);
    override TQuery GetQuery< TQuery >(string name);
    override void Clean();
    override void Export(bool upload);
    override async void Upload(bool showProgressUI = true);
};

Inherited Members

public:
    // properties

    int Version;
    string ExportPath;
    bool InitializeRuntime;
    bool UploadToCloud;

    // methods

    void Startup();
    void Shutdown();
    virtual void UpdateModule(UpdatePhase updatePhase);
    void InitializeTimer();
    void InvalidateTimer();
    double GetTimeSinceStartUp();
    double GetRealTimeSinceStartUp();
    TQuery AddQuery< TQuery >(string name);
    TQuery GetQuery< TQuery >(string name);
    void RemoveQuery< TQuery >(string name);
    TEvent AddEvent< TEvent >(string name);
    TEvent GetEvent< TEvent >(string name);
    void RemoveEvent< TEvent >(string name);
    void Export(bool upload);
    void Upload(bool showUploadProgressUI);
    void Clean();

Detailed Documentation

The MAGES analytics module implementation.

Properties

float SuccessThreshold

Gets or sets the score threshold for a successful operation.

If the score is above or equal to this value, the operation is considered successful. If the score is below this value, the operation is considered a failure. The accepted values are between 0-100.

GameObject SessionOverviewPrefab

Gets or sets the Session overview prefab which gets displayed on operation end.

bool RuntimeAnalyticsNotifications

Gets or sets a value indicating whether the analytics notifications will be displayed or not.

ScoringMergePolicy ActionScoringMergePolicy

Gets or sets the policy for calculating the score of actions that are performed multiple times.

Dictionary Queries

Gets the analytics queries.

Dictionary Events

Gets the analytics events.

JObject ExportedData

Gets or sets the JObject holding all the exported data of the operation.

MAGESAnalyticsRuntime AnalyticsRuntime

Gets the analytics runtime.

override bool UploadToCloud

Gets or sets a value indicating whether the analytics will be uploaded to the cloud or not.

UnityEvent OnEventTriggered

Gets or sets the on event event.

UnityEvent OnObjectiveProcessed

Gets or sets the on objective processed event.

UnityEvent OnErrorTriggered

Gets or sets the on error event.

UnityEvent OnScoreInitialized

Gets or sets the on score initialized event.

UnityEvent OnScoreChanged

Gets or sets the on score changed event.

UnityEvent OnAnalyticsExportedEvent

Gets or sets the on analytics exported events.