docc 0.8.3 (0d44999b)
C++ API Reference
Loading...
Searching...
No Matches
map_dispatcher.h
Go to the documentation of this file.
1#pragma once
2
6
7namespace sdfg {
8namespace codegen {
9
14private:
16
17public:
19 LanguageExtension& language_extension,
21 analysis::AnalysisManager& analysis_manager,
23 InstrumentationPlan& instrumentation_plan,
24 ArgCapturePlan& arg_capture_plan
25 );
26
28 PrettyPrinter& main_stream, PrettyPrinter& globals_stream, CodeSnippetFactory& library_snippet_factory
29 ) override {
30 throw std::runtime_error("MapDispatcher::dispatch_node not implemented");
31 }
32
34 PrettyPrinter& main_stream, PrettyPrinter& globals_stream, CodeSnippetFactory& library_snippet_factory
35 ) override;
36
38};
39
45
47private:
49
50public:
52 LanguageExtension& language_extension,
54 analysis::AnalysisManager& analysis_manager,
56 InstrumentationPlan& instrumentation_plan,
57 ArgCapturePlan& arg_capture_plan
58 );
59
61 PrettyPrinter& main_stream, PrettyPrinter& globals_stream, CodeSnippetFactory& library_snippet_factory
62 ) override;
63
65};
66
67} // namespace codegen
68} // namespace sdfg
Definition structured_sdfg.h:30
Definition analysis.h:53
Definition arg_capture_plan.h:36
Originally started out as a handler for additional source files, like hardware-accelerator kernels th...
Definition code_snippet_factory.h:69
Definition instrumentation_info.h:37
Definition instrumentation_plan.h:26
Definition language_extension.h:39
NodeDispatcher(LanguageExtension &language_extension, StructuredSDFG &sdfg, analysis::AnalysisManager &analysis_manager, structured_control_flow::ControlFlowNode &node, InstrumentationPlan &instrumentation_plan, ArgCapturePlan &arg_capture_plan)
Definition utils.h:16
Dispatches to the actual NodeDispatcher based on scheduleType and the MapDispatcherRegistry.
Definition map_dispatcher.h:13
void dispatch_node(PrettyPrinter &main_stream, PrettyPrinter &globals_stream, CodeSnippetFactory &library_snippet_factory) override
Definition map_dispatcher.h:27
InstrumentationInfo instrumentation_info() const override
Bad design.
SchedTypeMapDispatcher(LanguageExtension &language_extension, StructuredSDFG &sdfg, analysis::AnalysisManager &analysis_manager, structured_control_flow::Map &node, InstrumentationPlan &instrumentation_plan, ArgCapturePlan &arg_capture_plan)
void dispatch(PrettyPrinter &main_stream, PrettyPrinter &globals_stream, CodeSnippetFactory &library_snippet_factory) override
void dispatch_node(PrettyPrinter &main_stream, PrettyPrinter &globals_stream, CodeSnippetFactory &library_snippet_factory) override
InstrumentationInfo instrumentation_info() const override
Bad design.
SequentialMapDispatcher(LanguageExtension &language_extension, StructuredSDFG &sdfg, analysis::AnalysisManager &analysis_manager, structured_control_flow::Map &node, InstrumentationPlan &instrumentation_plan, ArgCapturePlan &arg_capture_plan)
Represents a parallel map loop with configurable scheduling.
Definition map.h:47
Definition argument_registry.h:10
SchedTypeMapDispatcher MapDispatcher
Definition map_dispatcher.h:44
Definition analysis.h:7
Dispatcher base class for code generation from control flow nodes.