diff --git a/RGBController/RGBController.cpp b/RGBController/RGBController.cpp index 565de6b6..d27b8e52 100644 --- a/RGBController/RGBController.cpp +++ b/RGBController/RGBController.cpp @@ -3,6 +3,22 @@ using namespace std::chrono_literals; +mode::mode() +{ + name = ""; + value = 0; + flags = 0; + speed_min = 0; + speed_max = 0; + colors_min = 1; + colors_max = 1; +} + +mode::~mode() +{ + colors.clear(); +} + RGBController::RGBController() { DeviceThreadRunning = true; diff --git a/RGBController/RGBController.h b/RGBController/RGBController.h index 0f621a34..ef8de91c 100644 --- a/RGBController/RGBController.h +++ b/RGBController/RGBController.h @@ -61,10 +61,11 @@ enum }; /*------------------------------------------------------------------*\ -| Mode Type | +| Mode Class | \*------------------------------------------------------------------*/ -typedef struct +class mode { +public: /*--------------------------------------------------------------*\ | Mode Information | \*--------------------------------------------------------------*/ @@ -84,7 +85,13 @@ typedef struct unsigned int color_mode; /* Mode color selection */ std::vector colors; /* mode-specific colors */ -} mode; + + /*--------------------------------------------------------------*\ + | Mode Constructor / Destructor | + \*--------------------------------------------------------------*/ + mode(); + ~mode(); +}; typedef struct {