docc 0.8.3 (0d44999b)
C++ API Reference
Loading...
Searching...
No Matches
sdfg::transformations::RPCNodeTransform Class Reference

#include <sdfg/transformations/rpc_node_transform.h>

Inheritance diagram for sdfg::transformations::RPCNodeTransform:
[legend]

Public Member Functions

 RPCNodeTransform (structured_control_flow::ControlFlowNode &node, const std::string &target, const std::string &category, sdfg::passes::rpc::RpcContext &rpc_context, bool enable_fusion=true, bool normalize=true, bool schedule_loops=true, bool print_steps=false)
virtual std::string name () const override
 Get the name of this transformation.
virtual bool can_be_applied (sdfg::builder::StructuredSDFGBuilder &builder, sdfg::analysis::AnalysisManager &analysis_manager) override
 Check if this transformation can be safely applied.
virtual void apply (sdfg::builder::StructuredSDFGBuilder &builder, sdfg::analysis::AnalysisManager &analysis_manager) override
 Apply this transformation to the SDFG.
passes::rpc::RpcOptResponse & applied_recipe () const
void to_json (nlohmann::json &j) const override
 Serialize this transformation to JSON.
std::variant< std::unique_ptr< passes::rpc::RpcOptResponse >, std::string > parse_rpc_response (HttpResult result)
Public Member Functions inherited from sdfg::transformations::Transformation
virtual ~Transformation ()=default
virtual void set_report (PassReportConsumer *report)
 Set the report consumer for transformation feedback.
virtual bool try_apply (builder::StructuredSDFGBuilder &builder, analysis::AnalysisManager &analysis_manager)
 Attempt to apply the transformation if possible.

Additional Inherited Members

Protected Attributes inherited from sdfg::transformations::Transformation
PassReportConsumer * report_ = nullptr

Constructor & Destructor Documentation

◆ RPCNodeTransform()

sdfg::transformations::RPCNodeTransform::RPCNodeTransform ( structured_control_flow::ControlFlowNode & node,
const std::string & target,
const std::string & category,
sdfg::passes::rpc::RpcContext & rpc_context,
bool enable_fusion = true,
bool normalize = true,
bool schedule_loops = true,
bool print_steps = false )

Member Function Documentation

◆ applied_recipe()

passes::rpc::RpcOptResponse & sdfg::transformations::RPCNodeTransform::applied_recipe ( ) const
inline

◆ apply()

virtual void sdfg::transformations::RPCNodeTransform::apply ( sdfg::builder::StructuredSDFGBuilder & builder,
sdfg::analysis::AnalysisManager & analysis_manager )
overridevirtual

Apply this transformation to the SDFG.

Parameters
builderThe SDFG builder
analysis_managerThe analysis manager (may be invalidated)

Implements sdfg::transformations::Transformation.

◆ can_be_applied()

virtual bool sdfg::transformations::RPCNodeTransform::can_be_applied ( sdfg::builder::StructuredSDFGBuilder & builder,
sdfg::analysis::AnalysisManager & analysis_manager )
overridevirtual

Check if this transformation can be safely applied.

Parameters
builderThe SDFG builder
analysis_managerThe analysis manager providing necessary analyses
Returns
true if all preconditions are met

Implements sdfg::transformations::Transformation.

◆ name()

virtual std::string sdfg::transformations::RPCNodeTransform::name ( ) const
overridevirtual

Get the name of this transformation.

Returns
The transformation name (e.g., "LoopInterchange")

Implements sdfg::transformations::Transformation.

◆ parse_rpc_response()

std::variant< std::unique_ptr< passes::rpc::RpcOptResponse >, std::string > sdfg::transformations::RPCNodeTransform::parse_rpc_response ( HttpResult result)

◆ to_json()

void sdfg::transformations::RPCNodeTransform::to_json ( nlohmann::json & j) const
overridevirtual

Serialize this transformation to JSON.

Parameters
jJSON object to populate with transformation description
Exceptions
std::logic_errorif not implemented

Implements sdfg::transformations::Transformation.


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