74 const Context &context)
const = 0;
94 Array<int> graph_output_index_by_socket_index_;
134 std::string
input_name(
int index)
const override;
virtual ~GraphExecutorLogger()=default
virtual void log_before_node_execute(const FunctionNode &node, const Params ¶ms, const Context &context) const
virtual void dump_when_outputs_are_missing(const FunctionNode &node, Span< const OutputSocket * > missing_sockets, const Context &context) const
virtual void log_after_node_execute(const FunctionNode &node, const Params ¶ms, const Context &context) const
virtual void log_socket_value(const Socket &socket, GPointer value, const Context &context) const
virtual void dump_when_input_is_set_twice(const InputSocket &target_socket, const OutputSocket &from_socket, const Context &context) const
virtual ~GraphExecutorNodeExecuteWrapper()=default
virtual void execute_node(const FunctionNode &node, Params ¶ms, const Context &context) const =0
virtual Vector< const FunctionNode * > get_nodes_with_side_effects(const Context &context) const
virtual ~GraphExecutorSideEffectProvider()=default
int node_states_array_offset
void * init_storage(LinearAllocator<> &allocator) const override
GraphExecutor(const Graph &graph, Vector< const GraphInputSocket * > graph_inputs, Vector< const GraphOutputSocket * > graph_outputs, const Logger *logger, const SideEffectProvider *side_effect_provider, const NodeExecuteWrapper *node_execute_wrapper)
std::string output_name(int index) const override
std::string input_name(int index) const override
int loaded_inputs_array_offset
Array< int > node_states_offsets
void destruct_storage(void *storage) const override