Olympe Engine 2.0
2D Game Engine with ECS Architecture
Loading...
Searching...
No Matches
Classes | Namespaces
DynamicDataPinManager.h File Reference

Engine for generating and tracking dynamic data pins (Phase 24.3). More...

#include <string>
#include <vector>
#include <map>
#include "ConditionPreset.h"
#include "ConditionPresetRegistry.h"
#include "NodeConditionRef.h"
#include "DynamicDataPin.h"
#include "../../BlueprintEditor/ConditionRef.h"
+ Include dependency graph for DynamicDataPinManager.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  Olympe::DynamicDataPinManager
 Generates, tracks, and invalidates DynamicDataPin objects for a node. More...
 

Namespaces

namespace  Olympe
 < Provides AssetID and INVALID_ASSET_ID
 

Detailed Description

Engine for generating and tracking dynamic data pins (Phase 24.3).

Author
Olympe Engine
Date
2026-03-17

DynamicDataPinManager is responsible for keeping the set of DynamicDataPins on a NodeBranch in sync with its NodeConditionRef list. Whenever the node's conditions change (preset added, removed, or updated), the manager regenerates the pin set to match.

Design constraints:

Usage:

DynamicDataPinManager mgr(registry);
mgr.SyncPins(node.conditions); // regenerate / keep existing
node.dynamicPins = mgr.GetAllPins(); // write back to node
// When a preset is deleted:
mgr.InvalidatePreset(deletedPresetID);
node.dynamicPins = mgr.GetAllPins();
ComponentTypeID GetComponentTypeID_Static()
Definition ECS_Entity.h:56

C++14 compliant — no std::optional, structured bindings, std::filesystem.

Definition in file DynamicDataPinManager.h.