23#include "../../third_party/nlohmann/json.hpp"
ComponentTypeID GetComponentTypeID_Static()
Defines the Operand type used in condition preset expressions.
< Provides AssetID and INVALID_ASSET_ID
ComparisonOp
The relational operator used in a ConditionPreset.
A globally-stored, reusable condition expression.
std::pair< bool, bool > GetPinNeeds() const
Returns a pair {needsLeft, needsRight}.
nlohmann::json ToJson() const
Serializes this preset to a JSON object.
std::string GetPreview() const
Returns a human-readable preview string.
static ConditionPreset FromJson(const nlohmann::json &data)
Deserializes a ConditionPreset from a JSON object.
ConditionPreset()
Default constructor — generates an empty preset.
static std::string OpToString(ComparisonOp o)
Returns the operator as a display string (e.g. "<=").
std::string id
Global unique UUID (e.g. "preset_001")
bool NeedsLeftPin() const
Returns true when the left operand is in Pin mode.
static ComparisonOp OpFromString(const std::string &s)
Parses a display string back to a ComparisonOp.
bool NeedsRightPin() const
Returns true when the right operand is in Pin mode.
std::string name
Human-readable display name (e.g. "Condition #1")
One side of a ConditionPreset comparison expression.