diff --git a/Cli/CMakeLists.txt b/Cli/CMakeLists.txt new file mode 100644 index 0000000..c998250 --- /dev/null +++ b/Cli/CMakeLists.txt @@ -0,0 +1,14 @@ +cmake_minimum_required(VERSION 3.10) + +# Set the project name +project(Cli) + +# Define the Cli library +add_library(Cli STATIC + Cli.cpp + Cli.h +) + +target_include_directories(Cli PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}) +target_link_libraries(Cli PUBLIC DrawingEngine ClassFactory) + diff --git a/Cli/Cli.cpp b/Cli/Cli.cpp new file mode 100644 index 0000000..2f0a85e --- /dev/null +++ b/Cli/Cli.cpp @@ -0,0 +1,19 @@ +#include "Cli.h" + +Cli::Cli(any widthI, any heightI, any wallI, any routeI) : DrawingEngine(widthI, heightI) { + writeToLogs("CLI created"); + if (!checkIfCorrect() || !setVar(wall, wallI, "wall") || !setVar(route, routeI, "route")) { + setNotCorrected(); + } +} + +void Cli::print(vector> grid) { + for (int v = 0; v < getVar("height"); v++) { + for (int i = 0; i < getVar("width"); ++i) { + char toPrint = (grid[v][i] == 0) ? getVar("route") : getVar("wall"); + cout << toPrint; + } + cout << endl; + } +} + diff --git a/Cli/Cli.h b/Cli/Cli.h new file mode 100644 index 0000000..c4c041d --- /dev/null +++ b/Cli/Cli.h @@ -0,0 +1,25 @@ +#ifndef CLI_H +#define CLI_H + +#include +#include +#include +#include +#include "../Logs/Logs.h" +#include "../DrawingEngine/DrawingEngine.h" + +using namespace std; + +class Cli : public DrawingEngine { +private: + shared_ptr wall = make_shared(); + shared_ptr route = make_shared(); + +public: + Cli(any widthI, any heightI, any wallI, any routeI); + + void print(vector> grid); +}; + +#endif /* CLI_H */ +