// Copyright (c) 2012-2021 Wojciech Figat. All rights reserved.
#pragma once
#include "Engine/Core/Types/BaseTypes.h"
///
/// Editor user analytics reporting and telemetry service.
///
class EditorAnalytics
{
public:
///
/// Determines whether analytics session is active.
///
/// true if there is active analytics session running; otherwise, false.
static bool IsSessionActive();
///
/// Starts the session.
///
static void StartSession();
///
/// Ends the session.
///
static void EndSession();
///
/// Sends the custom event.
///
/// The event category name.
/// The event name.
/// The event label.
static void SendEvent(const char* category, const char* name, const char* label = nullptr);
///
/// Sends the custom event.
///
/// The event category name.
/// The event name.
/// The event label.
static void SendEvent(const char* category, const char* name, const StringView& label);
///
/// Sends the custom event.
///
/// The event category name.
/// The event name.
/// The event label.
static void SendEvent(const char* category, const char* name, const Char* label);
};