11#ifndef OLYMPE_ENTITY_BLACKBOARD_H
12#define OLYMPE_ENTITY_BLACKBOARD_H
17#include <unordered_map>
23#include "../json_helper.h"
28class GlobalTemplateBlackboard;
37 const std::unordered_map<std::string, TaskValue>*
globalOverrides =
nullptr);
ComponentTypeID GetComponentTypeID_Static()
Runtime key-value store for task graph variables.
Core enumerations and TaskValue type-safe variant for the Atomic Task System.
json ExportGlobalsToJson() const
TaskValue GetValueScoped(const std::string &varName) const
void Initialize(const TaskGraphTemplate &tmpl, const std::unordered_map< std::string, TaskValue > *globalOverrides=nullptr)
uint32_t GetEntityID() const
TaskValue GetLocalValue(const std::string &localKey) const
bool HasVariableScoped(const std::string &varName) const
std::string DebugSummary() const
void SetLocalValue(const std::string &localKey, const TaskValue &value)
size_t GetTotalVariableCount() const
std::unordered_map< std::string, VariableType > m_globalTypes
void SetValueScoped(const std::string &varName, const TaskValue &value)
size_t GetLocalVariableCount() const
TaskValue GetGlobalValue(const std::string &globalKey) const
size_t GetGlobalVariableCount() const
bool ImportGlobalsFromJson(const json &data)
std::unordered_map< std::string, TaskValue > m_globalVars
static void ParseScopedName(const std::string &scopedName, std::string &outPrefix, std::string &outName)
bool HasGlobalVariable(const std::string &globalKey) const
bool HasLocalVariable(const std::string &localKey) const
void SetGlobalValue(const std::string &globalKey, const TaskValue &value)
Simple map-based blackboard for task graph runtime state.
Immutable, shareable task graph asset.
C++14-compliant type-safe value container for task parameters.
< Provides AssetID and INVALID_ASSET_ID