Polyphase Game Engine
Loading...
Searching...
No Matches
NodeGraph Class Reference

#include <NodeGraph.h>

Public Member Functions

 NodeGraph ()
 
 ~NodeGraph ()
 
GraphNodeAddNode (TypeId nodeType)
 
void RemoveNode (GraphNodeId id)
 
GraphNodeFindNode (GraphNodeId id) const
 
uint32_t GetNumNodes () const
 
const std::vector< GraphNode * > & GetNodes () const
 
GraphLinkAddLink (GraphPinId outputPinId, GraphPinId inputPinId)
 
void RemoveLink (GraphLinkId id)
 
GraphLinkFindLink (GraphLinkId id) const
 
GraphLinkFindLinkByInputPin (GraphPinId inputPinId) const
 
uint32_t GetNumLinks () const
 
const std::vector< GraphLink > & GetLinks () const
 
GraphPinFindPin (GraphPinId id) const
 
GraphNodeFindPinOwner (GraphPinId id) const
 
bool WouldCreateCycle (GraphNodeId fromNodeId, GraphNodeId toNodeId) const
 
void SaveStream (Stream &stream)
 
void LoadStream (Stream &stream, uint32_t version)
 
const std::string & GetDomainName () const
 
void SetDomainName (const std::string &name)
 
const std::string & GetGraphName () const
 
void SetGraphName (const std::string &name)
 
void Clear ()
 
GraphNodeId AllocNodeId ()
 
GraphPinId AllocPinId ()
 
GraphLinkId AllocLinkId ()
 
void InsertNode (GraphNode *node)
 
void CopyFrom (const NodeGraph &other)
 
void SetOwnerNode (Node *node)
 
NodeGetOwnerNode () const
 
GraphNodeFindInputNode (const char *inputName) const
 
bool SetInputFloat (const char *inputName, float value)
 
bool SetInputInt (const char *inputName, int32_t value)
 
bool SetInputBool (const char *inputName, bool value)
 
bool SetInputString (const char *inputName, const char *value)
 
bool SetInputVector (const char *inputName, const glm::vec3 &value)
 
bool SetInputColor (const char *inputName, const glm::vec4 &value)
 
bool SetInputByte (const char *inputName, uint8_t value)
 
bool SetInputAsset (const char *inputName, Asset *value)
 
bool SetInputVector2D (const char *inputName, const glm::vec2 &value)
 
bool SetInputShort (const char *inputName, int16_t value)
 
bool SetInputNode (const char *inputName, Node *value)
 
bool SetInputNode3D (const char *inputName, Node *value)
 
bool SetInputWidget (const char *inputName, Node *value)
 
bool SetInputText (const char *inputName, Node *value)
 
bool SetInputQuad (const char *inputName, Node *value)
 
bool SetInputAudio3D (const char *inputName, Node *value)
 
bool SetInputScene (const char *inputName, Asset *value)
 
bool SetInputSpline3D (const char *inputName, Node *value)
 
GraphNodeFindOutputNode () const
 
const DatumGetOutputValue (uint32_t pinIndex) const
 

Public Attributes

std::unordered_set< GraphPinIdmExecutedPinIds
 

Constructor & Destructor Documentation

◆ NodeGraph()

NodeGraph::NodeGraph ( )

◆ ~NodeGraph()

NodeGraph::~NodeGraph ( )

Member Function Documentation

◆ AddLink()

GraphLink * NodeGraph::AddLink ( GraphPinId  outputPinId,
GraphPinId  inputPinId 
)

◆ AddNode()

GraphNode * NodeGraph::AddNode ( TypeId  nodeType)

◆ AllocLinkId()

GraphLinkId NodeGraph::AllocLinkId ( )
inline

◆ AllocNodeId()

GraphNodeId NodeGraph::AllocNodeId ( )
inline

◆ AllocPinId()

GraphPinId NodeGraph::AllocPinId ( )
inline

◆ Clear()

void NodeGraph::Clear ( )

◆ CopyFrom()

void NodeGraph::CopyFrom ( const NodeGraph other)

◆ FindInputNode()

GraphNode * NodeGraph::FindInputNode ( const char *  inputName) const

◆ FindLink()

GraphLink * NodeGraph::FindLink ( GraphLinkId  id) const

◆ FindLinkByInputPin()

GraphLink * NodeGraph::FindLinkByInputPin ( GraphPinId  inputPinId) const

◆ FindNode()

GraphNode * NodeGraph::FindNode ( GraphNodeId  id) const

◆ FindOutputNode()

GraphNode * NodeGraph::FindOutputNode ( ) const

◆ FindPin()

GraphPin * NodeGraph::FindPin ( GraphPinId  id) const

◆ FindPinOwner()

GraphNode * NodeGraph::FindPinOwner ( GraphPinId  id) const

◆ GetDomainName()

const std::string & NodeGraph::GetDomainName ( ) const
inline

◆ GetGraphName()

const std::string & NodeGraph::GetGraphName ( ) const
inline

◆ GetLinks()

const std::vector< GraphLink > & NodeGraph::GetLinks ( ) const
inline

◆ GetNodes()

const std::vector< GraphNode * > & NodeGraph::GetNodes ( ) const
inline

◆ GetNumLinks()

uint32_t NodeGraph::GetNumLinks ( ) const
inline

◆ GetNumNodes()

uint32_t NodeGraph::GetNumNodes ( ) const
inline

◆ GetOutputValue()

const Datum & NodeGraph::GetOutputValue ( uint32_t  pinIndex) const

◆ GetOwnerNode()

Node * NodeGraph::GetOwnerNode ( ) const
inline

◆ InsertNode()

void NodeGraph::InsertNode ( GraphNode node)

◆ LoadStream()

void NodeGraph::LoadStream ( Stream stream,
uint32_t  version 
)

◆ RemoveLink()

void NodeGraph::RemoveLink ( GraphLinkId  id)

◆ RemoveNode()

void NodeGraph::RemoveNode ( GraphNodeId  id)

◆ SaveStream()

void NodeGraph::SaveStream ( Stream stream)

◆ SetDomainName()

void NodeGraph::SetDomainName ( const std::string &  name)
inline

◆ SetGraphName()

void NodeGraph::SetGraphName ( const std::string &  name)
inline

◆ SetInputAsset()

bool NodeGraph::SetInputAsset ( const char *  inputName,
Asset value 
)

◆ SetInputAudio3D()

bool NodeGraph::SetInputAudio3D ( const char *  inputName,
Node value 
)

◆ SetInputBool()

bool NodeGraph::SetInputBool ( const char *  inputName,
bool  value 
)

◆ SetInputByte()

bool NodeGraph::SetInputByte ( const char *  inputName,
uint8_t  value 
)

◆ SetInputColor()

bool NodeGraph::SetInputColor ( const char *  inputName,
const glm::vec4 &  value 
)

◆ SetInputFloat()

bool NodeGraph::SetInputFloat ( const char *  inputName,
float  value 
)

◆ SetInputInt()

bool NodeGraph::SetInputInt ( const char *  inputName,
int32_t  value 
)

◆ SetInputNode()

bool NodeGraph::SetInputNode ( const char *  inputName,
Node value 
)

◆ SetInputNode3D()

bool NodeGraph::SetInputNode3D ( const char *  inputName,
Node value 
)

◆ SetInputQuad()

bool NodeGraph::SetInputQuad ( const char *  inputName,
Node value 
)

◆ SetInputScene()

bool NodeGraph::SetInputScene ( const char *  inputName,
Asset value 
)

◆ SetInputShort()

bool NodeGraph::SetInputShort ( const char *  inputName,
int16_t  value 
)

◆ SetInputSpline3D()

bool NodeGraph::SetInputSpline3D ( const char *  inputName,
Node value 
)

◆ SetInputString()

bool NodeGraph::SetInputString ( const char *  inputName,
const char *  value 
)

◆ SetInputText()

bool NodeGraph::SetInputText ( const char *  inputName,
Node value 
)

◆ SetInputVector()

bool NodeGraph::SetInputVector ( const char *  inputName,
const glm::vec3 &  value 
)

◆ SetInputVector2D()

bool NodeGraph::SetInputVector2D ( const char *  inputName,
const glm::vec2 &  value 
)

◆ SetInputWidget()

bool NodeGraph::SetInputWidget ( const char *  inputName,
Node value 
)

◆ SetOwnerNode()

void NodeGraph::SetOwnerNode ( Node node)
inline

◆ WouldCreateCycle()

bool NodeGraph::WouldCreateCycle ( GraphNodeId  fromNodeId,
GraphNodeId  toNodeId 
) const

Member Data Documentation

◆ mExecutedPinIds

std::unordered_set<GraphPinId> NodeGraph::mExecutedPinIds

The documentation for this class was generated from the following files: