38 lines
1.0 KiB
C++
38 lines
1.0 KiB
C++
|
|
/* SPDX-FileCopyrightText: 2025 Blender Authors
|
||
|
|
*
|
||
|
|
* SPDX-License-Identifier: GPL-2.0-or-later */
|
||
|
|
|
||
|
|
#pragma once
|
||
|
|
|
||
|
|
#include "BLI_string_ref.hh"
|
||
|
|
|
||
|
|
#include "COM_context.hh"
|
||
|
|
#include "COM_input_descriptor.hh"
|
||
|
|
#include "COM_operation.hh"
|
||
|
|
#include "COM_result.hh"
|
||
|
|
|
||
|
|
namespace blender::compositor {
|
||
|
|
|
||
|
|
/* ------------------------------------------------------------------------------------------------
|
||
|
|
* Implicit Input Operation
|
||
|
|
*
|
||
|
|
* An operation that outputs a result representing a specific implicit input. */
|
||
|
|
class ImplicitInputOperation : public Operation {
|
||
|
|
private:
|
||
|
|
/* The identifier of the output. */
|
||
|
|
static const StringRef output_identifier_;
|
||
|
|
/* The type of implicit input needed. */
|
||
|
|
ImplicitInput implicit_input_;
|
||
|
|
|
||
|
|
public:
|
||
|
|
ImplicitInputOperation(Context &context, const ImplicitInput implicit_input);
|
||
|
|
|
||
|
|
void execute() override;
|
||
|
|
|
||
|
|
/* Get a reference to the output result of the operation, this essentially calls the super
|
||
|
|
* get_result with the output identifier of the operation. */
|
||
|
|
Result &get_result();
|
||
|
|
};
|
||
|
|
|
||
|
|
} // namespace blender::compositor
|