7#include "./../../vector.h"
37 const std::vector<ComponentNode>&
GetAllNodes()
const;
54 const std::vector<std::pair<NodeId, NodeId>>&
GetConnections()
const;
ComponentTypeID GetComponentTypeID_Static()
std::vector< LayoutNode > CalculateLayout()
const std::vector< NodeId > & GetSelectedNodes() const
void InitializeNodeProperties(ComponentNode &node)
void LoadParameterSchemas(const std::string &schemasFilePath)
std::vector< NodeId > m_selectedNodes
std::vector< std::pair< NodeId, NodeId > > m_connections
void SetDirty(bool dirty)
void SetCanvasOffset(const Vector &offset)
bool SaveToFile(const std::string &filePath)
size_t GetNodeCount() const
bool ValidateConnection(NodeId sourceId, NodeId targetId) const
std::string GetDocumentName() const
std::map< std::string, std::map< std::string, std::string > > m_parameterSchemas
bool HasConnection(NodeId sourceId, NodeId targetId) const
EntityPrefabGraphDocument()
void SetDocumentName(const std::string &name)
~EntityPrefabGraphDocument()
NodeId GetSelectedNode() const
bool LoadFromFile(const std::string &filePath)
bool ConnectNodes(NodeId sourceId, NodeId targetId)
NodeId CreateComponentNode(const std::string &componentType)
void RemoveNode(NodeId nodeId)
void SetCanvasZoom(float zoom)
ComponentNode * GetNode(NodeId nodeId)
std::string m_documentName
void DeselectNode(NodeId nodeId)
const std::vector< ComponentNode > & GetAllNodes() const
bool HasNode(NodeId nodeId) const
bool DisconnectNodes(NodeId sourceId, NodeId targetId)
static EntityPrefabGraphDocument FromJson(const json &data)
const std::vector< std::pair< NodeId, NodeId > > & GetConnections() const
void SelectNode(NodeId nodeId)
std::vector< ComponentNode > m_nodes
Vector GetCanvasOffset() const
void ArrangeNodesInGrid(int gridWidth=4, float spacing=200.0f)
float GetCanvasZoom() const
< Provides AssetID and INVALID_ASSET_ID
const NodeId InvalidNodeId
std::vector< NodeId > outputs
std::vector< NodeId > inputs