From b400e932ce310e856a5fcbc49ecce522c9cad1b3 Mon Sep 17 00:00:00 2001 From: Siddarth-Suresh <65844402+Siddarth-Suresh@users.noreply.github.com> Date: Sun, 23 Mar 2025 20:27:31 -0400 Subject: Initial GUI Commit --- CMakeLists.txt | 30 +++++++++++++++++++++++++ README.md | 1 + inc/cache.h | 1 + inc/dram.h | 1 + src/gui/GUI.cc | 39 ++++++++++++++++++++++++++++++++ src/gui/GUI.h | 27 ++++++++++++++++++++++ src/gui/GUI.ui | 55 +++++++++++++++++++++++++++++++++++++++++++++ src/gui/gui.py | 0 src/gui/main.cc | 11 +++++++++ src/gui/resources.qrc | 5 +++++ src/gui/resources/input.txt | 1 + 11 files changed, 171 insertions(+) create mode 100644 src/gui/GUI.cc create mode 100644 src/gui/GUI.h create mode 100644 src/gui/GUI.ui delete mode 100644 src/gui/gui.py create mode 100644 src/gui/main.cc create mode 100644 src/gui/resources.qrc create mode 100644 src/gui/resources/input.txt diff --git a/CMakeLists.txt b/CMakeLists.txt index 6a48922..64cd30d 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -20,6 +20,12 @@ include_directories( # gather source files file(GLOB_RECURSE SRCS "src/*.cc") list(REMOVE_ITEM SRCS "${CMAKE_CURRENT_SOURCE_DIR}/src/main.cc") +#exclude gui files from cli executable +foreach(file ${SRCS}) + if(file MATCHES "${CMAKE_CURRENT_SOURCE_DIR}/src/gui/.*") + list(REMOVE_ITEM SRCS ${file}) + endif() +endforeach() # find python3 components find_package(Python3 COMPONENTS Development REQUIRED) @@ -41,3 +47,27 @@ target_link_libraries(tests PRIVATE Catch2::Catch2WithMain PRIVATE Python3::Pyth include(CTest) include(Catch) catch_discover_tests(tests) + +# ================================ +# Qt6 GUI Integration +# ================================ +cmake_minimum_required(VERSION 3.16) + +set(CMAKE_AUTOUIC ON) +set(CMAKE_AUTOMOC ON) +set(CMAKE_AUTORCC ON) + +# Find Qt6 Components +find_package(Qt6 REQUIRED COMPONENTS Widgets) + + +# Gather GUI Source Files +file(GLOB_RECURSE GUI_SRCS "src/gui/*.cc") + +# Gather GUI Resources +qt_add_resources(GUI_RESOURCES "src/gui/resources.qrc") + +# GUI executable +qt_add_executable("${PROJECT_NAME}_gui" ${GUI_SRCS} ${SRCS} ${GUI_RESOURCES}) +target_link_libraries("${PROJECT_NAME}_gui" PRIVATE Qt6::Widgets) + diff --git a/README.md b/README.md index 34ae8af..bdfd76e 100644 --- a/README.md +++ b/README.md @@ -5,6 +5,7 @@ - g++ (GCC) 11.4.0 - python 3.10 or newer - catch2 version 3.5.3 +- Qt version 6.8.2 ## to compile Generate the build directory with diff --git a/inc/cache.h b/inc/cache.h index ef9c9e4..88fd352 100644 --- a/inc/cache.h +++ b/inc/cache.h @@ -4,6 +4,7 @@ #include "storage.h" #include #include +#include class Cache : public Storage { diff --git a/inc/dram.h b/inc/dram.h index f4d175e..0799015 100644 --- a/inc/dram.h +++ b/inc/dram.h @@ -3,6 +3,7 @@ #include "definitions.h" #include "storage.h" #include +#include class Dram : public Storage { diff --git a/src/gui/GUI.cc b/src/gui/GUI.cc new file mode 100644 index 0000000..5577e6e --- /dev/null +++ b/src/gui/GUI.cc @@ -0,0 +1,39 @@ +#include "GUI.h" +#include "./ui_GUI.h" +#include +#include + +GUI::GUI(QWidget *parent) + : QWidget(parent) + , ui(new Ui::GUI) +{ + ui->setupUi(this); + loadTxtFile(); +} + +GUI::~GUI() +{ + delete ui; +} + +void GUI::loadTxtFile(){ + QFile inputFile(":/resources/input.txt"); + inputFile.open(QIODevice::ReadOnly); + + QTextStream in(&inputFile); + QString line = in.readAll(); + inputFile.close(); + + ui->textEdit->setPlainText(line); + QTextCursor cursor = ui->textEdit->textCursor(); + cursor.movePosition(QTextCursor::Start, QTextCursor::MoveAnchor, 1); +} + +void GUI::on_pushButton_clicked() +{ + QString searchString = ui->lineEdit->text(); + ui->textEdit->find(searchString, QTextDocument::FindWholeWords); +} + + + diff --git a/src/gui/GUI.h b/src/gui/GUI.h new file mode 100644 index 0000000..b06f310 --- /dev/null +++ b/src/gui/GUI.h @@ -0,0 +1,27 @@ +#ifndef GUI_H +#define GUI_H + +#include + +QT_BEGIN_NAMESPACE +namespace Ui { +class GUI; +} +QT_END_NAMESPACE + +class GUI : public QWidget +{ + Q_OBJECT + +public: + GUI(QWidget *parent = nullptr); + ~GUI(); + +private slots: + void on_pushButton_clicked(); + +private: + Ui::GUI *ui; + void loadTxtFile(); +}; +#endif // GUI_H diff --git a/src/gui/GUI.ui b/src/gui/GUI.ui new file mode 100644 index 0000000..bce52c2 --- /dev/null +++ b/src/gui/GUI.ui @@ -0,0 +1,55 @@ + + + GUI + + + + 0 + 0 + 800 + 600 + + + + GUI + + + + + 60 + 30 + 317 + 232 + + + + + + + + + keyword + + + + + + + + + + find + + + + + + + + + + + + + + diff --git a/src/gui/gui.py b/src/gui/gui.py deleted file mode 100644 index e69de29..0000000 diff --git a/src/gui/main.cc b/src/gui/main.cc new file mode 100644 index 0000000..e592da9 --- /dev/null +++ b/src/gui/main.cc @@ -0,0 +1,11 @@ +#include "GUI.h" + +#include + +int main(int argc, char *argv[]) +{ + QApplication a(argc, argv); + GUI w; + w.show(); + return a.exec(); +} diff --git a/src/gui/resources.qrc b/src/gui/resources.qrc new file mode 100644 index 0000000..44aaefa --- /dev/null +++ b/src/gui/resources.qrc @@ -0,0 +1,5 @@ + + + resources/input.txt + + diff --git a/src/gui/resources/input.txt b/src/gui/resources/input.txt new file mode 100644 index 0000000..fc1c3cf --- /dev/null +++ b/src/gui/resources/input.txt @@ -0,0 +1 @@ +Lorem Ipsum \ No newline at end of file -- cgit v1.2.3 From 63fe56a0638b53477579ca37df3bfce30613e4ed Mon Sep 17 00:00:00 2001 From: bd Date: Sun, 23 Mar 2025 21:48:12 -0400 Subject: Remove Python, combine main files --- CMakeLists.txt | 65 ++++++++++++++++++++------------------------------- README.md | 1 - inc/gui.h | 26 +++++++++++++++++++++ src/gui/GUI.cc | 39 ------------------------------- src/gui/GUI.h | 27 --------------------- src/gui/GUI.ui | 55 ------------------------------------------- src/gui/gui.cc | 39 +++++++++++++++++++++++++++++++ src/gui/gui.ui | 55 +++++++++++++++++++++++++++++++++++++++++++ src/gui/main.cc | 11 --------- src/gui/resources.qrc | 5 ++-- src/main.cc | 12 ++++++---- 11 files changed, 156 insertions(+), 179 deletions(-) create mode 100644 inc/gui.h delete mode 100644 src/gui/GUI.cc delete mode 100644 src/gui/GUI.h delete mode 100644 src/gui/GUI.ui create mode 100644 src/gui/gui.cc create mode 100644 src/gui/gui.ui delete mode 100644 src/gui/main.cc diff --git a/CMakeLists.txt b/CMakeLists.txt index 64cd30d..d4be3ee 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -2,6 +2,9 @@ cmake_minimum_required(VERSION 3.5) project(risc_vector) set(CMAKE_EXPORT_COMPILE_COMMANDS ON) +set(CMAKE_AUTOUIC ON) # automatically process .ui files into headers +set(CMAKE_AUTOMOC ON) +set(CMAKE_AUTORCC ON) add_compile_options(-Wall -lstdc++) add_compile_options(-Wextra -Wpedantic) @@ -20,54 +23,36 @@ include_directories( # gather source files file(GLOB_RECURSE SRCS "src/*.cc") list(REMOVE_ITEM SRCS "${CMAKE_CURRENT_SOURCE_DIR}/src/main.cc") -#exclude gui files from cli executable -foreach(file ${SRCS}) - if(file MATCHES "${CMAKE_CURRENT_SOURCE_DIR}/src/gui/.*") - list(REMOVE_ITEM SRCS ${file}) - endif() -endforeach() -# find python3 components -find_package(Python3 COMPONENTS Development REQUIRED) +# find QT components +find_package(Qt6 COMPONENTS Widgets REQUIRED) # binary executable -add_executable(${PROJECT_NAME} ${SRCS} src/main.cc) -target_link_libraries(${PROJECT_NAME} PRIVATE Python3::Python) - -find_package(Catch2 REQUIRED) - -#gather test files -file(GLOB_RECURSE TESTS "tests/*.cc") - -# test executable -add_executable(tests ${SRCS} ${TESTS}) -target_link_libraries(tests PRIVATE Catch2::Catch2WithMain PRIVATE Python3::Python) +add_executable(${PROJECT_NAME} ${SRCS}) +qt_add_resources(GUI_RESOURCES "src/gui/resources.qrc") +target_link_libraries(${PROJECT_NAME} PRIVATE Qt6::Widgets) -# test discovery -include(CTest) -include(Catch) -catch_discover_tests(tests) +# find_package(Catch2 REQUIRED) -# ================================ -# Qt6 GUI Integration -# ================================ -cmake_minimum_required(VERSION 3.16) +# #gather test files +# file(GLOB_RECURSE TESTS "tests/*.cc") -set(CMAKE_AUTOUIC ON) -set(CMAKE_AUTOMOC ON) -set(CMAKE_AUTORCC ON) +# # test executable +# add_executable(tests ${SRCS} ${TESTS}) +# target_link_libraries(tests PRIVATE Catch2::Catch2WithMain PRIVATE Qt6::Widgets) -# Find Qt6 Components -find_package(Qt6 REQUIRED COMPONENTS Widgets) +# # test discovery +# include(CTest) +# include(Catch) +# catch_discover_tests(tests) -# Gather GUI Source Files -file(GLOB_RECURSE GUI_SRCS "src/gui/*.cc") - -# Gather GUI Resources -qt_add_resources(GUI_RESOURCES "src/gui/resources.qrc") +# # Gather GUI Source Files +# file(GLOB_RECURSE GUI_SRCS "src/gui/*.cc") -# GUI executable -qt_add_executable("${PROJECT_NAME}_gui" ${GUI_SRCS} ${SRCS} ${GUI_RESOURCES}) -target_link_libraries("${PROJECT_NAME}_gui" PRIVATE Qt6::Widgets) +# # Gather GUI Resources +# qt_add_resources(GUI_RESOURCES "src/gui/resources.qrc") +# # GUI executable +# qt_add_executable("${PROJECT_NAME}_gui" ${GUI_SRCS} ${SRCS} ${GUI_RESOURCES}) +# target_link_libraries("${PROJECT_NAME}_gui" PRIVATE Qt6::Widgets) diff --git a/README.md b/README.md index bdfd76e..a6ce662 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,6 @@ ## dependencies - cmake - g++ (GCC) 11.4.0 -- python 3.10 or newer - catch2 version 3.5.3 - Qt version 6.8.2 diff --git a/inc/gui.h b/inc/gui.h new file mode 100644 index 0000000..668fafa --- /dev/null +++ b/inc/gui.h @@ -0,0 +1,26 @@ +#ifndef GUI_H +#define GUI_H +#include + +namespace Ui +{ +class gui; +} +QT_END_NAMESPACE + +class Gui : public QWidget +{ + Q_OBJECT + + public: + Gui(QWidget *parent = nullptr); + ~Gui(); + + private slots: + void on_pushButton_clicked(); + + private: + Ui::gui *ui; + void loadTxtFile(); +}; +#endif // GUI_H diff --git a/src/gui/GUI.cc b/src/gui/GUI.cc deleted file mode 100644 index 5577e6e..0000000 --- a/src/gui/GUI.cc +++ /dev/null @@ -1,39 +0,0 @@ -#include "GUI.h" -#include "./ui_GUI.h" -#include -#include - -GUI::GUI(QWidget *parent) - : QWidget(parent) - , ui(new Ui::GUI) -{ - ui->setupUi(this); - loadTxtFile(); -} - -GUI::~GUI() -{ - delete ui; -} - -void GUI::loadTxtFile(){ - QFile inputFile(":/resources/input.txt"); - inputFile.open(QIODevice::ReadOnly); - - QTextStream in(&inputFile); - QString line = in.readAll(); - inputFile.close(); - - ui->textEdit->setPlainText(line); - QTextCursor cursor = ui->textEdit->textCursor(); - cursor.movePosition(QTextCursor::Start, QTextCursor::MoveAnchor, 1); -} - -void GUI::on_pushButton_clicked() -{ - QString searchString = ui->lineEdit->text(); - ui->textEdit->find(searchString, QTextDocument::FindWholeWords); -} - - - diff --git a/src/gui/GUI.h b/src/gui/GUI.h deleted file mode 100644 index b06f310..0000000 --- a/src/gui/GUI.h +++ /dev/null @@ -1,27 +0,0 @@ -#ifndef GUI_H -#define GUI_H - -#include - -QT_BEGIN_NAMESPACE -namespace Ui { -class GUI; -} -QT_END_NAMESPACE - -class GUI : public QWidget -{ - Q_OBJECT - -public: - GUI(QWidget *parent = nullptr); - ~GUI(); - -private slots: - void on_pushButton_clicked(); - -private: - Ui::GUI *ui; - void loadTxtFile(); -}; -#endif // GUI_H diff --git a/src/gui/GUI.ui b/src/gui/GUI.ui deleted file mode 100644 index bce52c2..0000000 --- a/src/gui/GUI.ui +++ /dev/null @@ -1,55 +0,0 @@ - - - GUI - - - - 0 - 0 - 800 - 600 - - - - GUI - - - - - 60 - 30 - 317 - 232 - - - - - - - - - keyword - - - - - - - - - - find - - - - - - - - - - - - - - diff --git a/src/gui/gui.cc b/src/gui/gui.cc new file mode 100644 index 0000000..9f2405d --- /dev/null +++ b/src/gui/gui.cc @@ -0,0 +1,39 @@ +#include "gui.h" +#include "ui_gui.h" +#include +#include + +Gui::Gui(QWidget *parent) + : QWidget(parent) + , ui(new Ui::gui) +{ + ui->setupUi(this); + loadTxtFile(); +} + +Gui::~Gui() +{ + delete ui; +} + +void Gui::loadTxtFile(){ + QFile inputFile(":/resources/input.txt"); + inputFile.open(QIODevice::ReadOnly); + + QTextStream in(&inputFile); + QString line = in.readAll(); + inputFile.close(); + + ui->textEdit->setPlainText(line); + QTextCursor cursor = ui->textEdit->textCursor(); + cursor.movePosition(QTextCursor::Start, QTextCursor::MoveAnchor, 1); +} + +void Gui::on_pushButton_clicked() +{ + QString searchString = ui->lineEdit->text(); + ui->textEdit->find(searchString, QTextDocument::FindWholeWords); +} + + + diff --git a/src/gui/gui.ui b/src/gui/gui.ui new file mode 100644 index 0000000..5f71c91 --- /dev/null +++ b/src/gui/gui.ui @@ -0,0 +1,55 @@ + + + gui + + + + 0 + 0 + 800 + 600 + + + + gui + + + + + 60 + 30 + 317 + 232 + + + + + + + + + keyword + + + + + + + + + + find + + + + + + + + + + + + + + diff --git a/src/gui/main.cc b/src/gui/main.cc deleted file mode 100644 index e592da9..0000000 --- a/src/gui/main.cc +++ /dev/null @@ -1,11 +0,0 @@ -#include "GUI.h" - -#include - -int main(int argc, char *argv[]) -{ - QApplication a(argc, argv); - GUI w; - w.show(); - return a.exec(); -} diff --git a/src/gui/resources.qrc b/src/gui/resources.qrc index 44aaefa..8bfd4e7 100644 --- a/src/gui/resources.qrc +++ b/src/gui/resources.qrc @@ -1,5 +1,6 @@ - + + - resources/input.txt + resources/input.txt diff --git a/src/main.cc b/src/main.cc index f5eecac..be0a6f0 100644 --- a/src/main.cc +++ b/src/main.cc @@ -1,6 +1,8 @@ #include "cli.h" #include "definitions.h" +#include "gui.h" #include "logger.h" +#include #include #include @@ -36,8 +38,7 @@ static void err() << std::endl; } -static void -parseArguments(int argc, char **argv, bool &memory_only) +static void parseArguments(int argc, char **argv, bool &memory_only) { struct option long_options[] = { {"debug", no_argument, 0, 'd'}, @@ -74,10 +75,13 @@ int main(int argc, char **argv) if (memory_only) { Cli cli; cli.run(); + } else { + QApplication a(argc, argv); + Gui w; + w.show(); + return a.exec(); } - // fork off python here - global_log->log(INFO, "Python started."); global_log->log(INFO, "Cleaning up..."); global_log->log(INFO, "Goodbye!"); return EXIT_SUCCESS; -- cgit v1.2.3 From 46c79e6e929ab784eb12417028dd43740b1a561e Mon Sep 17 00:00:00 2001 From: bd Date: Mon, 24 Mar 2025 12:17:41 -0400 Subject: Added gui folder with its own CMake to house GUI+main.cc --- CMakeLists.txt | 49 ++++++++++--------------- inc/gui.h | 26 -------------- inc/logger.h | 10 ++---- src/gui/gui.cc | 39 -------------------- src/gui/gui.ui | 55 ---------------------------- src/gui/resources.qrc | 6 ---- src/gui/resources/input.txt | 1 - src/logger/logger.cc | 20 +---------- src/main.cc | 88 --------------------------------------------- 9 files changed, 21 insertions(+), 273 deletions(-) delete mode 100644 inc/gui.h delete mode 100644 src/gui/gui.cc delete mode 100644 src/gui/gui.ui delete mode 100644 src/gui/resources.qrc delete mode 100644 src/gui/resources/input.txt delete mode 100644 src/main.cc diff --git a/CMakeLists.txt b/CMakeLists.txt index d4be3ee..9daac12 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,58 +1,45 @@ cmake_minimum_required(VERSION 3.5) +set(CMAKE_CXX_COMPILER "g++") project(risc_vector) set(CMAKE_EXPORT_COMPILE_COMMANDS ON) -set(CMAKE_AUTOUIC ON) # automatically process .ui files into headers -set(CMAKE_AUTOMOC ON) -set(CMAKE_AUTORCC ON) -add_compile_options(-Wall -lstdc++) +add_compile_options(-Wall -lstdc++ -g -O0) add_compile_options(-Wextra -Wpedantic) # cpp standard set(CMAKE_CXX_STANDARD 17) set(CMAKE_CXX_STANDARD_REQUIRED ON) -set(CMAKE_CXX_COMPILER "g++") - # header files include_directories( ${PROJECT_SOURCE_DIR}/inc ) +# add gui +add_subdirectory(gui) + # gather source files file(GLOB_RECURSE SRCS "src/*.cc") -list(REMOVE_ITEM SRCS "${CMAKE_CURRENT_SOURCE_DIR}/src/main.cc") # find QT components find_package(Qt6 COMPONENTS Widgets REQUIRED) +qt_standard_project_setup() # binary executable -add_executable(${PROJECT_NAME} ${SRCS}) -qt_add_resources(GUI_RESOURCES "src/gui/resources.qrc") -target_link_libraries(${PROJECT_NAME} PRIVATE Qt6::Widgets) - -# find_package(Catch2 REQUIRED) - -# #gather test files -# file(GLOB_RECURSE TESTS "tests/*.cc") - -# # test executable -# add_executable(tests ${SRCS} ${TESTS}) -# target_link_libraries(tests PRIVATE Catch2::Catch2WithMain PRIVATE Qt6::Widgets) - -# # test discovery -# include(CTest) -# include(Catch) -# catch_discover_tests(tests) +add_library(${PROJECT_NAME}_lib ${SRCS}) +target_link_libraries(${PROJECT_NAME}_lib) +find_package(Catch2 REQUIRED) -# # Gather GUI Source Files -# file(GLOB_RECURSE GUI_SRCS "src/gui/*.cc") +#gather test files +file(GLOB_RECURSE TESTS "tests/*.cc") -# # Gather GUI Resources -# qt_add_resources(GUI_RESOURCES "src/gui/resources.qrc") +# test executable +add_executable(tests ${SRCS} ${TESTS}) +target_link_libraries(tests PRIVATE Catch2::Catch2WithMain PRIVATE) -# # GUI executable -# qt_add_executable("${PROJECT_NAME}_gui" ${GUI_SRCS} ${SRCS} ${GUI_RESOURCES}) -# target_link_libraries("${PROJECT_NAME}_gui" PRIVATE Qt6::Widgets) +# test discovery +include(CTest) +include(Catch) +catch_discover_tests(tests) diff --git a/inc/gui.h b/inc/gui.h deleted file mode 100644 index 668fafa..0000000 --- a/inc/gui.h +++ /dev/null @@ -1,26 +0,0 @@ -#ifndef GUI_H -#define GUI_H -#include - -namespace Ui -{ -class gui; -} -QT_END_NAMESPACE - -class Gui : public QWidget -{ - Q_OBJECT - - public: - Gui(QWidget *parent = nullptr); - ~Gui(); - - private slots: - void on_pushButton_clicked(); - - private: - Ui::gui *ui; - void loadTxtFile(); -}; -#endif // GUI_H diff --git a/inc/logger.h b/inc/logger.h index 38527c8..88f9e30 100644 --- a/inc/logger.h +++ b/inc/logger.h @@ -11,7 +11,7 @@ class Logger public: static Logger* getInstance(); - ~Logger(); + ~Logger() = default; /** * Do not allow copies. @@ -32,15 +32,9 @@ class Logger void log(LogLevel, const string &); private: - /** - * Constructor. - * @param The file name to log to. - * @return A new logger object. - */ - Logger(const string &); + Logger() = default; static Logger* logger_instance; static LogLevel level; - static ofstream logFile; static string level_to_string(LogLevel); static int level_to_int(LogLevel); }; diff --git a/src/gui/gui.cc b/src/gui/gui.cc deleted file mode 100644 index 9f2405d..0000000 --- a/src/gui/gui.cc +++ /dev/null @@ -1,39 +0,0 @@ -#include "gui.h" -#include "ui_gui.h" -#include -#include - -Gui::Gui(QWidget *parent) - : QWidget(parent) - , ui(new Ui::gui) -{ - ui->setupUi(this); - loadTxtFile(); -} - -Gui::~Gui() -{ - delete ui; -} - -void Gui::loadTxtFile(){ - QFile inputFile(":/resources/input.txt"); - inputFile.open(QIODevice::ReadOnly); - - QTextStream in(&inputFile); - QString line = in.readAll(); - inputFile.close(); - - ui->textEdit->setPlainText(line); - QTextCursor cursor = ui->textEdit->textCursor(); - cursor.movePosition(QTextCursor::Start, QTextCursor::MoveAnchor, 1); -} - -void Gui::on_pushButton_clicked() -{ - QString searchString = ui->lineEdit->text(); - ui->textEdit->find(searchString, QTextDocument::FindWholeWords); -} - - - diff --git a/src/gui/gui.ui b/src/gui/gui.ui deleted file mode 100644 index 5f71c91..0000000 --- a/src/gui/gui.ui +++ /dev/null @@ -1,55 +0,0 @@ - - - gui - - - - 0 - 0 - 800 - 600 - - - - gui - - - - - 60 - 30 - 317 - 232 - - - - - - - - - keyword - - - - - - - - - - find - - - - - - - - - - - - - - diff --git a/src/gui/resources.qrc b/src/gui/resources.qrc deleted file mode 100644 index 8bfd4e7..0000000 --- a/src/gui/resources.qrc +++ /dev/null @@ -1,6 +0,0 @@ - - - - resources/input.txt - - diff --git a/src/gui/resources/input.txt b/src/gui/resources/input.txt deleted file mode 100644 index fc1c3cf..0000000 --- a/src/gui/resources/input.txt +++ /dev/null @@ -1 +0,0 @@ -Lorem Ipsum \ No newline at end of file diff --git a/src/logger/logger.cc b/src/logger/logger.cc index 55d7a15..6dfaef1 100644 --- a/src/logger/logger.cc +++ b/src/logger/logger.cc @@ -6,21 +6,8 @@ using namespace std; LogLevel Logger::level = INFO; -ofstream Logger::logFile; Logger *Logger::logger_instance; -Logger::Logger(const string &filename) -{ - if (!filename.empty()) { - logFile.open(filename, ios::app); - if (!logFile.is_open()) { - cerr << "Error opening log file." << endl; - } - } -} - -Logger::~Logger() { logFile.close(); } - void Logger::setLevel(LogLevel level) { level = level; } void Logger::log(LogLevel level, const string &message) @@ -39,17 +26,12 @@ void Logger::log(LogLevel level, const string &message) << message << endl; cout << logEntry.str(); - - if (logFile.is_open()) { - logFile << logEntry.str(); - logFile.flush(); - } } Logger *Logger::getInstance() { if (logger_instance == nullptr) { - logger_instance = new Logger("vector.log"); + logger_instance = new Logger(); } return logger_instance; } diff --git a/src/main.cc b/src/main.cc deleted file mode 100644 index be0a6f0..0000000 --- a/src/main.cc +++ /dev/null @@ -1,88 +0,0 @@ -#include "cli.h" -#include "definitions.h" -#include "gui.h" -#include "logger.h" -#include -#include -#include - -static Logger *global_log = Logger::getInstance(); - -static std::string version_number = "v0.1"; -static std::string banner = - " _/_/_/ _/_/_/ _/_/_/ _/_/_/ \n" - " _/ _/ _/ _/ _/ \n" - " _/_/_/ _/ _/_/ _/ \n" - " _/ _/ _/ _/ _/ \n" - "_/ _/ _/_/_/ _/_/_/ _/_/_/ \n" - " \n" - " \n" - " _/_/ _/_/ \n" - " _/ _/ _/ _/_/_/_/ _/_/_/ _/_/_/_/_/ _/_/ _/_/_/ _/ \n" - " _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ \n" - "_/ _/ _/ _/_/_/ _/ _/ _/ _/ _/_/_/ _/ \n" - " _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ \n" - " _/ _/ _/_/_/_/ _/_/_/ _/ _/_/ _/ _/ _/ \n" - " _/_/ _/_/ "; -static void print_version_number() -{ - std::cout << banner << version_number << '\n'; -} - -static void err() -{ - std::cerr << "Usage:\n\trisc_vector [OPTIONS]\nOptions:\n\t--debug,\t-d: " - "turn on verbose output\n\t--memory-only,\t-m: run the memory " - "simulator only, without a GUI.\n\t--version,\t-v: print the " - "version information and exit\n" - << std::endl; -} - -static void parseArguments(int argc, char **argv, bool &memory_only) -{ - struct option long_options[] = { - {"debug", no_argument, 0, 'd'}, - {"memory-only", no_argument, 0, 'm'}, - {0, 0, 0, 0}}; - - int opt; - - while ((opt = getopt_long(argc, argv, "d:m", long_options, NULL)) != -1) { - switch (opt) { - case 'd': - global_log->setLevel(DEBUG); - global_log->log(DEBUG, "DEBUG output enabled."); - break; - case 'm': - global_log->log(INFO, "Starting the storage CLI interface..."); - memory_only = true; - break; - default: - err(); - exit(EXIT_FAILURE); - } - } -} - -int main(int argc, char **argv) -{ - print_version_number(); - global_log->log(INFO, "Initializing..."); - - bool memory_only = false; - parseArguments(argc, argv, memory_only); - - if (memory_only) { - Cli cli; - cli.run(); - } else { - QApplication a(argc, argv); - Gui w; - w.show(); - return a.exec(); - } - - global_log->log(INFO, "Cleaning up..."); - global_log->log(INFO, "Goodbye!"); - return EXIT_SUCCESS; -} -- cgit v1.2.3