1 // Copyright 2001-2019 Crytek GmbH / Crytek Group. All rights reserved.
5 #include "Deprecated/DocGraphNodes/DocGraphNodeBase.h"
9 class CDocGraphAbstractInterfaceFunctionNode
: public CDocGraphNodeBase
13 CDocGraphAbstractInterfaceFunctionNode(IScriptFile
& file
, IDocGraph
& graph
, const SGUID
& guid
= SGUID(), const SGUID
& contextGUID
= SGUID(), const SGUID
& refGUID
= SGUID(), Vec2 pos
= Vec2(ZERO
));
16 virtual IAnyConstPtr
GetCustomOutputDefault() const override
;
17 virtual size_t AddCustomOutput(const IAny
& value
) override
;
18 virtual void EnumerateOptionalOutputs(const ScriptGraphNodeOptionalOutputEnumerator
& enumerator
) override
;
19 virtual size_t AddOptionalOutput(const char* szName
, EScriptGraphPortFlags flags
, const CAggregateTypeId
& typeId
) override
;
20 virtual void RemoveOutput(size_t outputIdx
) override
;
21 virtual void Refresh(const SScriptRefreshParams
& params
) override
;
22 virtual void Serialize(Serialization::IArchive
& archive
) override
;
23 virtual void PreCompileSequence(IDocGraphSequencePreCompiler
& preCompiler
, size_t outputIdx
) const override
;
24 virtual void LinkSequence(IDocGraphSequenceLinker
& linker
, size_t outputIdx
, const LibFunctionId
& functionId
) const override
;
25 virtual void Compile(IDocGraphNodeCompiler
& compiler
, EDocGraphSequenceStep sequenceStep
, size_t portIdx
) const override
;
69 void CompileInputs(IDocGraphNodeCompiler
& compiler
) const;
70 void CompileTrue(IDocGraphNodeCompiler
& compiler
) const;
71 void CompileFalse(IDocGraphNodeCompiler
& compiler
) const;
72 void CompileEnd(IDocGraphNodeCompiler
& compiler
) const;
74 // #SchematycTODO : Can we store domain/origin?
75 IAnyPtrVector m_inputValues
;
76 IAnyPtrVector m_outputValues
;