17 #include <cerata/api.h>
18 #include <fletcher/common.h>
24 #include "fletchgen/schema.h"
25 #include "fletchgen/recordbatch.h"
30 using cerata::Component;
37 explicit Kernel(std::string name,
38 const std::vector<std::shared_ptr<RecordBatch>> &recordbatches,
39 const std::shared_ptr<Component> &
mmio);
49 std::shared_ptr<Kernel>
kernel(
const std::string& name,
50 const std::vector<std::shared_ptr<RecordBatch>> &recordbatches,
51 const std::shared_ptr<Component> &
mmio);
Contains all classes and functions related to Fletchgen.
std::shared_ptr< Kernel > kernel(const std::string &name, const std::vector< std::shared_ptr< RecordBatch >> &recordbatches, const std::shared_ptr< Component > &mmio)
Make a kernel component based on RecordBatch and MMIO components.
std::shared_ptr< Component > mmio(const std::vector< fletcher::RecordBatchDescription > &batches, const std::vector< MmioReg > ®s, Axi4LiteSpec axi_spec)
Generate the MMIO component for the nucleus.
The Kernel component to be implemented by the user.
Kernel(std::string name, const std::vector< std::shared_ptr< RecordBatch >> &recordbatches, const std::shared_ptr< Component > &mmio)
Construct a new kernel.