CG_Gen::ChiselProject class

class ChiselProject This class is for temporary Chisel project management.

mainly used for executing .scala files and generating verilog out of Chisel description

Constructors, destructors, conversion operators

ChiselProject(const std::filesystem::path& i_baseDir, const std::filesystem::path& i_tempDirPath, const std::filesystem::path& i_outputDir, const std::filesystem::path& i_inputFile)
ChiselProject(const ChiselProject&) deleted

Public functions

auto makeAbsolutePath(const std::filesystem::path& i_relativePath) const -> std::filesystem::path
makeAbsolutePath method makes absolute path from relative
auto operator=(const ChiselProject&) -> ChiselProject& deleted
auto checkPackages() -> bool
checkPackages method checks packages and dependencies required for compilation and execution of .scala files
auto createVerilog() -> bool
createVerilog method starts compilation of .scala files and creates their verilog descriptions

Function documentation

std::filesystem::path CG_Gen::ChiselProject::makeAbsolutePath(const std::filesystem::path& i_relativePath) const

makeAbsolutePath method makes absolute path from relative

Parameters
i_relativePath relative path to be transformed
Returns absolute path made from relative path *‍/

bool CG_Gen::ChiselProject::checkPackages()

checkPackages method checks packages and dependencies required for compilation and execution of .scala files

Returns true if all packages are installed and false otherwise *‍/

bool CG_Gen::ChiselProject::createVerilog()

createVerilog method starts compilation of .scala files and creates their verilog descriptions

Returns true if creation was successful and false otherwise *‍/