Plasma Engine  2.0
Loading...
Searching...
No Matches
plVisualScriptNodeManager Class Reference
Inheritance diagram for plVisualScriptNodeManager:

Public Member Functions

plHashedString GetScriptBaseClass () const
 
bool IsFilteredByBaseClass (const plRTTI *pNodeType, const plVisualScriptNodeRegistry::NodeDesc &nodeDesc, const plHashedString &sBaseClass, bool bLogWarning=false) const
 
plVisualScriptDataType::Enum GetVariableType (plTempHashedString sName) const
 
plResult GetVariableDefaultValue (plTempHashedString sName, plVariant &out_value) const
 
void GetInputExecutionPins (const plDocumentObject *pObject, plDynamicArray< const plVisualScriptPin * > &out_pins) const
 
void GetOutputExecutionPins (const plDocumentObject *pObject, plDynamicArray< const plVisualScriptPin * > &out_pins) const
 
void GetInputDataPins (const plDocumentObject *pObject, plDynamicArray< const plVisualScriptPin * > &out_pins) const
 
void GetOutputDataPins (const plDocumentObject *pObject, plDynamicArray< const plVisualScriptPin * > &out_pins) const
 
void GetEntryNodes (const plDocumentObject *pObject, plDynamicArray< const plDocumentObject * > &out_entryNodes) const
 
plVisualScriptDataType::Enum GetDeductedType (const plVisualScriptPin &pin) const
 
plVisualScriptDataType::Enum GetDeductedType (const plDocumentObject *pObject) const
 
bool IsCoroutine (const plDocumentObject *pObject) const
 
bool IsLoop (const plDocumentObject *pObject) const
 
- Public Member Functions inherited from plDocumentNodeManager
virtual const plRTTIGetConnectionType () const
 
plVec2 GetNodePos (const plDocumentObject *pObject) const
 
const plConnectionGetConnection (const plDocumentObject *pObject) const
 
const plConnectionGetConnectionIfExists (const plDocumentObject *pObject) const
 
const plPinGetInputPinByName (const plDocumentObject *pObject, plStringView sName) const
 
const plPinGetOutputPinByName (const plDocumentObject *pObject, plStringView sName) const
 
plArrayPtr< const plUniquePtr< const plPin > > GetInputPins (const plDocumentObject *pObject) const
 
plArrayPtr< const plUniquePtr< const plPin > > GetOutputPins (const plDocumentObject *pObject) const
 
bool IsNode (const plDocumentObject *pObject) const
 
bool IsConnection (const plDocumentObject *pObject) const
 
bool IsDynamicPinProperty (const plDocumentObject *pObject, const plAbstractProperty *pProp) const
 
plArrayPtr< const plConnection *const > GetConnections (const plPin &pin) const
 
bool HasConnections (const plPin &pin) const
 
bool IsConnected (const plPin &source, const plPin &target) const
 
plStatus CanConnect (const plRTTI *pObjectType, const plPin &source, const plPin &target, CanConnectResult &ref_result) const
 
plStatus CanDisconnect (const plConnection *pConnection) const
 
plStatus CanDisconnect (const plDocumentObject *pObject) const
 
plStatus CanMoveNode (const plDocumentObject *pObject, const plVec2 &vPos) const
 
void Connect (const plDocumentObject *pObject, const plPin &source, const plPin &target)
 
void Disconnect (const plDocumentObject *pObject)
 
void MoveNode (const plDocumentObject *pObject, const plVec2 &vPos)
 
void AttachMetaDataBeforeSaving (plAbstractObjectGraph &ref_graph) const
 
void RestoreMetaDataAfterLoading (const plAbstractObjectGraph &graph, bool bUndoable)
 
void GetMetaDataHash (const plDocumentObject *pObject, plUInt64 &inout_uiHash) const
 
bool CopySelectedObjects (plAbstractObjectGraph &out_objectGraph) const
 
bool PasteObjects (const plArrayPtr< plDocument::PasteInfo > &info, const plAbstractObjectGraph &objectGraph, const plVec2 &vPickedPosition, bool bAllowPickedPosition)
 
- Public Member Functions inherited from plDocumentObjectManager
 plDocumentObjectManager (const plRTTI *pRootType=plDocumentRoot::GetStaticRTTI())
 
void SetDocument (plDocument *pDocument)
 
plDocumentObjectCreateObject (const plRTTI *pRtti, plUuid guid=plUuid())
 
void DestroyObject (plDocumentObject *pObject)
 
virtual void DestroyAllObjects ()
 
virtual void GetCreateableTypes (plHybridArray< const plRTTI *, 32 > &ref_types) const
 
void PatchEmbeddedClassObjects (const plDocumentObject *pObject) const
 
const plDocumentObjectGetRootObject () const
 
plDocumentObjectGetRootObject ()
 
const plDocumentObjectGetObject (const plUuid &guid) const
 
plDocumentObjectGetObject (const plUuid &guid)
 
const plDocumentGetDocument () const
 
plDocumentGetDocument ()
 
plStatus SetValue (plDocumentObject *pObject, plStringView sProperty, const plVariant &newValue, plVariant index=plVariant())
 
plStatus InsertValue (plDocumentObject *pObject, plStringView sProperty, const plVariant &newValue, plVariant index=plVariant())
 
plStatus RemoveValue (plDocumentObject *pObject, plStringView sProperty, plVariant index=plVariant())
 
plStatus MoveValue (plDocumentObject *pObject, plStringView sProperty, const plVariant &oldIndex, const plVariant &newIndex)
 
void AddObject (plDocumentObject *pObject, plDocumentObject *pParent, plStringView sParentProperty, plVariant index)
 
void RemoveObject (plDocumentObject *pObject)
 
void MoveObject (plDocumentObject *pObject, plDocumentObject *pNewParent, plStringView sParentProperty, plVariant index)
 
plStatus CanAdd (const plRTTI *pRtti, const plDocumentObject *pParent, plStringView sParentProperty, const plVariant &index) const
 
plStatus CanRemove (const plDocumentObject *pObject) const
 
plStatus CanMove (const plDocumentObject *pObject, const plDocumentObject *pNewParent, plStringView sParentProperty, const plVariant &index) const
 
plStatus CanSelect (const plDocumentObject *pObject) const
 
bool IsUnderRootProperty (plStringView sRootProperty, const plDocumentObject *pObject) const
 
bool IsUnderRootProperty (plStringView sRootProperty, const plDocumentObject *pParent, plStringView sParentProperty) const
 
bool IsTemporary (const plDocumentObject *pObject) const
 
bool IsTemporary (const plDocumentObject *pParent, plStringView sParentProperty) const
 
plSharedPtr< plDocumentObjectManager::StorageSwapStorage (plSharedPtr< plDocumentObjectManager::Storage > pNewStorage)
 
plSharedPtr< plDocumentObjectManager::StorageGetStorage ()
 

Static Public Member Functions

static plStringView GetNiceTypeName (const plDocumentObject *pObject)
 
static plStringView GetNiceFunctionName (const plDocumentObject *pObject)
 

Public Attributes

plEvent< const plDocumentObject * > m_NodeChangedEvent
 
- Public Attributes inherited from plDocumentNodeManager
plEvent< const plDocumentNodeManagerEvent & > m_NodeEvents
 
- Public Attributes inherited from plDocumentObjectManager
plCopyOnBroadcastEvent< const plDocumentObjectStructureEvent & > m_StructureEvents
 
plCopyOnBroadcastEvent< const plDocumentObjectPropertyEvent & > m_PropertyEvents
 
plEvent< const plDocumentObjectEvent & > m_ObjectEvents
 

Private Member Functions

virtual void GetNodeCreationTemplates (plDynamicArray< plNodeCreationTemplate > &out_templates) const override
 For node documents this function is called instead of GetCreateableTypes to get a list for the node creation menu.
 

Friends

class plVisualScriptPin
 

Additional Inherited Members

- Public Types inherited from plDocumentNodeManager
enum class  CanConnectResult {
  ConnectNever , Connect1to1 , Connect1toN , ConnectNto1 ,
  ConnectNtoN
}
 
- Protected Member Functions inherited from plDocumentNodeManager
bool CanReachNode (const plDocumentObject *pSource, const plDocumentObject *pTarget, plSet< const plDocumentObject * > &Visited) const
 Tests whether pTarget can be reached from pSource by following the pin connections.
 
bool WouldConnectionCreateCircle (const plPin &source, const plPin &target) const
 Returns true if adding a connection between the two pins would create a circular graph.
 
plResult ResolveConnection (const plUuid &sourceObject, const plUuid &targetObject, plStringView sourcePin, plStringView targetPin, const plPin *&out_pSourcePin, const plPin *&out_pTargetPin) const
 
virtual void GetDynamicPinNames (const plDocumentObject *pObject, plStringView sPropertyName, plStringView sPinName, plDynamicArray< plString > &out_Names) const
 
virtual bool TryRecreatePins (const plDocumentObject *pObject)
 

Member Function Documentation

◆ GetNodeCreationTemplates()

void plVisualScriptNodeManager::GetNodeCreationTemplates ( plDynamicArray< plNodeCreationTemplate > & out_templates) const
overrideprivatevirtual

For node documents this function is called instead of GetCreateableTypes to get a list for the node creation menu.

See also
plNodeCreationTemplate

Reimplemented from plDocumentNodeManager.

◆ InternalCanConnect()

plStatus plVisualScriptNodeManager::InternalCanConnect ( const plPin & source,
const plPin & target,
CanConnectResult & out_Result ) const
overrideprivatevirtual

Reimplemented from plDocumentNodeManager.

◆ InternalCreatePins()

void plVisualScriptNodeManager::InternalCreatePins ( const plDocumentObject * pObject,
NodeInternal & node )
overrideprivatevirtual

Implements plDocumentNodeManager.

◆ InternalIsDynamicPinProperty()

bool plVisualScriptNodeManager::InternalIsDynamicPinProperty ( const plDocumentObject * pObject,
const plAbstractProperty * pProp ) const
overrideprivatevirtual

Reimplemented from plDocumentNodeManager.

◆ InternalIsNode()

bool plVisualScriptNodeManager::InternalIsNode ( const plDocumentObject * pObject) const
overrideprivatevirtual

Reimplemented from plDocumentNodeManager.


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