From 755dd7fd9a5f48ecfaf6795b83f1e6a08cd05f0a Mon Sep 17 00:00:00 2001 From: amazing-username Date: Wed, 26 Apr 2017 20:17:56 -0500 Subject: [PATCH] Cleaned up code and added a feature to print current brightness --- AlterBrightness.cpp | 154 ++++++++++++------------------------------ AlterBrightness.h | 46 +++++-------- Brightness.cpp | 33 +++------ Brightness.h | 6 +- BrightnessControl.cpp | 79 ---------------------- Main.cpp | 59 ++++++++++++++++ ModifyPermissions.sh | 4 +- makefile | 4 +- 8 files changed, 139 insertions(+), 246 deletions(-) delete mode 100644 BrightnessControl.cpp create mode 100644 Main.cpp diff --git a/AlterBrightness.cpp b/AlterBrightness.cpp index 579e200..146dd9c 100644 --- a/AlterBrightness.cpp +++ b/AlterBrightness.cpp @@ -1,5 +1,4 @@ #include -//#include #include #include "AlterBrightness.h" @@ -7,21 +6,17 @@ AlterBrightness::AlterBrightness() { currentBrightness = Brightness::getCurrentBrightness(); maxBrightness = Brightness::getMaxBrightness(); - AlterBrightness::options = new std::vector; initializeOptions(); - overwriteBrightness = new std::ofstream; - (*overwriteBrightness).open("/sys/class/backlight/intel_backlight/brightness", std::ios::out); + overwriteBrightness.open("/sys/class/backlight/intel_backlight/brightness", std::ios::out); } -AlterBrightness::AlterBrightness(Brightness* br) +AlterBrightness::AlterBrightness(const Brightness& br) { - currentBrightness = (*br).getCurrentBrightness(); - maxBrightness = (*br).getMaxBrightness(); - options = new std::vector; + currentBrightness = br.getCurrentBrightness(); + maxBrightness = br.getMaxBrightness(); initializeOptions(); - overwriteBrightness = new std::ofstream; - (*overwriteBrightness).open("/sys/class/backlight/intel_backlight/brightness", std::ios::out); + overwriteBrightness.open("/sys/class/backlight/intel_backlight/brightness", std::ios::out); } -AlterBrightness::AlterBrightness(const unsigned& change, const unsigned& current, const unsigned& max) +AlterBrightness::AlterBrightness(const int& change, const int& current, const int& max) { increment = change; decrement = change; @@ -29,103 +24,71 @@ AlterBrightness::AlterBrightness(const unsigned& change, const unsigned& current maxBrightness = max; } AlterBrightness::~AlterBrightness() -{ - delete options; - delete overwriteBrightness; -} +{ } + +void AlterBrightness::setIncrement(const int& change) +{ increment = change; } + +void AlterBrightness::setDecrement(const int& change) +{ decrement = change; } -void AlterBrightness::setIncrement(const unsigned& change) -{ - increment = change; -} -void AlterBrightness::setDecrement(const unsigned& change) -{ - decrement = change; -} -/** -void AlterBrightness::setCurrentBrightness() -{ - currentBrightness = current; -} -void AlterBrightness::setMaxBrightness() -{ - maxBrightness = max; -} -*/ void AlterBrightness::setPercentageBrightness(const float& percent) -{ - percentageBrightness = percent; -} +{ percentageBrightness = percent; } + void AlterBrightness::initializeOptions() { - (*options).push_back("inc"); - (*options).push_back("dec"); - (*options).push_back("per"); + options.push_back("inc"); + options.push_back("dec"); + options.push_back("per"); + options.push_back("cur"); } void AlterBrightness::chooseChange(const std::string& changeChoice) { - //std::ofstream s; - //s.open("/sys/class/backlight/intel_backlight/brightness", std::ios::out); - //std::cout << (*options).at(0) << std::endl; - - //if (strcmp(*changeChoice, getIncrease()) == 0) - //if (strcmp(*changeChoice, (*options).at(0)) == 0) - if ((*options).at(0).compare(changeChoice) == 0) + if (options.at(0).compare(changeChoice) == 0) { increaseBrightness(); std::cout << getCurrentBrightness() << std::endl; - (*overwriteBrightness) << getCurrentBrightness(); + overwriteBrightness << getCurrentBrightness(); } - //else if (strcmp(*changeChoice, getDecrease()) == 0) - else if ((*options).at(1).compare(changeChoice) == 0) + else if (options.at(1).compare(changeChoice) == 0) { decreaseBrightness(); std::cout << getCurrentBrightness() << std::endl; - (*overwriteBrightness) << getCurrentBrightness(); + overwriteBrightness << getCurrentBrightness(); } - //else if (strcmp(*changeChoice, getPercent()) == 0) - else if ((*options).at(2).compare(changeChoice) == 0) + else if (options.at(2).compare(changeChoice) == 0) { - - //std::cout << "Percentage" << std::endl; setBrightnessByPercentage(); std::cout << percentageBrightness << "%" << std::endl; - (*overwriteBrightness) << currentBrightness; + overwriteBrightness << currentBrightness; } + else if (options.at(3).compare(changeChoice) == 0) + std::cout << "The current percentage is: " << getCurrentBrightness() << "%" << std::endl; else - { std::cout << "Neither increase or decrease" << std::endl; - } - //s.close(); } void AlterBrightness::increaseBrightness() { if (getCurrentBrightness() + getIncrement() < getMaxBrightness()) - { currentBrightness = getCurrentBrightness() + getIncrement(); - } else currentBrightness = getMaxBrightness(); } void AlterBrightness::decreaseBrightness() { if (getCurrentBrightness() - getDecrement() > 0) - { currentBrightness = getCurrentBrightness() - getDecrement(); - } else currentBrightness = 1; } void AlterBrightness::setBrightnessByPercentage() { if (getPercentageBrightness() < 0 || getPercentageBrightness() > 100) - { std::cout << "Has to be between 0 and 100" <* AlterBrightness::getOptions() -{ - return options; -} -std::ofstream* AlterBrightness::getStreamToOverwriteBrightness() -{ - return overwriteBrightness; -} +std::vector AlterBrightness::getOptions() +{ return options; } +//std::ofstream AlterBrightness::getStreamToOverwriteBrightness() +//{ return overwriteBrightness; } -unsigned AlterBrightness::getIncrement() const -{ - return increment; -} -unsigned AlterBrightness::getDecrement() const -{ - return decrement; -} -unsigned AlterBrightness::getCurrentBrightness() const -{ - return currentBrightness; -} -unsigned AlterBrightness::getMaxBrightness() const -{ - return maxBrightness; -} +int AlterBrightness::getIncrement() const +{ return increment; } + +int AlterBrightness::getDecrement() const +{ return decrement; } + +int AlterBrightness::getCurrentBrightness() const +{ return currentBrightness; } + +int AlterBrightness::getMaxBrightness() const +{ return maxBrightness; } float AlterBrightness::getPercentageBrightness() const -{ - return percentageBrightness; -} -float AlterBrightness::floatToPercent(const float& percent) const -{ - return percent / 100; -} +{ return percentageBrightness; } -/** -char* AlterBrightness::getIncrease() -{ - return increase; -} -char* AlterBrightness::getDecrease() -{ - return decrease; -} -char* AlterBrightness::getPercent() -{ - return percent; -} -*/ +float AlterBrightness::floatToPercent(const float& percent) const +{ return percent / 100; } diff --git a/AlterBrightness.h b/AlterBrightness.h index 9dbf838..be603ac 100644 --- a/AlterBrightness.h +++ b/AlterBrightness.h @@ -10,16 +10,15 @@ class AlterBrightness { public: AlterBrightness(); - AlterBrightness(Brightness*); - AlterBrightness(const unsigned&, const unsigned&, const unsigned&); + AlterBrightness(const Brightness&); + AlterBrightness(const int&, const int&, const int&); ~AlterBrightness(); - std::vector* options; - //void setStreamToOverwriteBrightness(); + std::vector options{}; - void setIncrement(const unsigned&); - void setDecrement(const unsigned&); + void setIncrement(const int&); + void setDecrement(const int&); void setCurrentBrightness(); void setMaxBrightness(); void setPercentageBrightness(const float&); @@ -30,35 +29,24 @@ public: void decreaseBrightness(); void setBrightnessByPercentage(); - std::vector* getOptions(); - std::ofstream* getStreamToOverwriteBrightness(); + std::vector getOptions(); + //std::ofstream getStreamToOverwriteBrightness(); - unsigned getIncrement() const; - unsigned getDecrement() const; - unsigned getCurrentBrightness() const; - unsigned getMaxBrightness() const; + int getIncrement() const; + int getDecrement() const; + int getCurrentBrightness() const; + int getMaxBrightness() const; float getPercentageBrightness() const; float floatToPercent(const float&) const; - /** - char* getIncrease(); - char* getDecrease(); - char* getPercent(); - */ - private: - std::ofstream* overwriteBrightness; - unsigned increment; - unsigned decrement; - unsigned currentBrightness; - unsigned maxBrightness; - float percentageBrightness; - /** - char* increase; - char* decrease; - char* percent; - */ + std::ofstream overwriteBrightness{}; + int increment{}; + int decrement{}; + int currentBrightness{}; + int maxBrightness{}; + float percentageBrightness{}; }; #endif diff --git a/Brightness.cpp b/Brightness.cpp index b180900..0dadd0c 100644 --- a/Brightness.cpp +++ b/Brightness.cpp @@ -2,40 +2,29 @@ #include #include "Brightness.h" -unsigned Brightness::maxBrightness = 0; -unsigned Brightness::currentBrightness = 30; +int Brightness::maxBrightness = 0; +int Brightness::currentBrightness = 30; Brightness::Brightness() -{ - readBrightnessValues = new std::ifstream; -} +{ } + Brightness::~Brightness() -{ - delete readBrightnessValues; -} +{ } void Brightness::grabBrightness() { - //std::fstream input; - //input.open("/sys/class/backlight/intel_backlight/brightness", std::ios::in); - (*readBrightnessValues).open("/sys/class/backlight/intel_backlight/brightness", std::ios::in); + readBrightnessValues.open("/sys/class/backlight/intel_backlight/brightness", std::ios::in); - //input >> currentBrightness; - (*readBrightnessValues) >> currentBrightness; + readBrightnessValues >> currentBrightness; - (*readBrightnessValues).close(); - //input.close(); + readBrightnessValues.close(); } void Brightness::grabMaxBrightness() { - //std::fstream input; - //input.open("/sys/class/backlight/intel_backlight/max_brightness", std::ios::in); - (*readBrightnessValues).open("/sys/class/backlight/intel_backlight/max_brightness", std::ios::in); + readBrightnessValues.open("/sys/class/backlight/intel_backlight/max_brightness", std::ios::in); - //input >> maxBrightness; - (*readBrightnessValues) >> maxBrightness; + readBrightnessValues >> maxBrightness; - (*readBrightnessValues).close(); - //input.close(); + readBrightnessValues.close(); } unsigned Brightness::getCurrentBrightness() diff --git a/Brightness.h b/Brightness.h index e423c4c..3fa4bf0 100644 --- a/Brightness.h +++ b/Brightness.h @@ -15,8 +15,8 @@ public: static unsigned getMaxBrightness(); private: - std::ifstream* readBrightnessValues; - static unsigned currentBrightness; - static unsigned maxBrightness; + std::ifstream readBrightnessValues{}; + static int currentBrightness; + static int maxBrightness; }; #endif diff --git a/BrightnessControl.cpp b/BrightnessControl.cpp deleted file mode 100644 index 93db231..0000000 --- a/BrightnessControl.cpp +++ /dev/null @@ -1,79 +0,0 @@ -#include -#include -#include -#include "AlterBrightness.h" -#include "Brightness.h" - -int main(int argc, char* argv[]) -{ - - //char* control[strlen(*(argv + 1))] = {*(argv + 1)}; - //unsigned currentBrightness; - //unsigned maxBrightness; - - Brightness* br = new Brightness; - //std::cout << "argc is: " << argc << std::endl; - if (argc == 3) - { - std::string control = *(argv + 1); - unsigned changeAmount = atoi(*(argv + 2)); - float brightnessPercentage = atoi(*(argv + 2)); - - (*br).grabBrightness(); - (*br).grabMaxBrightness(); - - - AlterBrightness* ab = new AlterBrightness(br); - delete br; - (*ab).setIncrement(changeAmount); - (*ab).setDecrement(changeAmount); - (*ab).setPercentageBrightness(brightnessPercentage); - - (*ab).chooseChange((control)); - - delete ab; - } - else - { - std::cout << "Inlude one of the following arguements: " << std::endl; - std::cout << std::setw(10) << "inc"; - std::cout << std::setw(10) << "dec"; - std::cout << std::setw(10) << "per" << std::endl << std::endl; - - - std::cout << "If inc or dec add a value to adjust the brightness by value" << std::endl; - std::cout << "If per add a value between 0 and 100 to adjust the brightness by percentage" << std::endl; - std::cout << "Adjusting the percentage by brightness is recommended" << std::endl << std::endl; - std::cout << "Example: Hot.out per 30" << std::endl << std::endl; - - } - /** - switch(argc) - { - case 3: - //std::cout << "two" << std::endl; - - - - AlterBrightness* ab = new AlterBrightness; - delete br; - (*ab).setIncrement(changeAmount); - (*ab).setDecrement(changeAmount); - (*ab).setPercentageBrightness(brightnessPercentage); - - (*ab).chooseChange((control)); - - delete ab; - break; - default: - - - break; - } - */ - - - //PointerRemoval pR; - - return 0; -} diff --git a/Main.cpp b/Main.cpp new file mode 100644 index 0000000..f9b9893 --- /dev/null +++ b/Main.cpp @@ -0,0 +1,59 @@ +#include +#include +#include + +#include "AlterBrightness.h" +#include "Brightness.h" + +int main(int argc, char* argv[]) +{ + + + Brightness br{}; + if (argc == 3) + { + std::string control{*(argv + 1)}; + auto changeAmount = atoi(*(argv + 2)); + auto brightnessPercentage = atoi(*(argv + 2)); + + br.grabBrightness(); + br.grabMaxBrightness(); + + + AlterBrightness ab{}; + ab.setIncrement(changeAmount); + ab.setDecrement(changeAmount); + ab.setPercentageBrightness(brightnessPercentage); + + ab.chooseChange((control)); + + } + else if (argc == 2) + { + std::string control{*(argv +1)}; + if (control.compare("cur") == 0) + { + br.grabBrightness(); + AlterBrightness ab{}; + ab.chooseChange(control); + } + } + else + { + std::cout << "Inlude one of the following arguements: " << std::endl; + std::cout << std::setw(10) << "inc"; + std::cout << std::setw(10) << "dec"; + std::cout << std::setw(10) << "per"; + std::cout << std::setw(10) << "cur" << std::endl << std::endl; + + + std::cout << "If inc or dec add a value to adjust the brightness by value" << std::endl; + std::cout << "If per add a value between 0 and 100 to adjust the brightness by percentage" << std::endl; + std::cout << "If cur then the current percentage is printed" << std::endl; + std::cout << "Adjusting the percentage by brightness is recommended" << std::endl << std::endl; + std::cout << "Example: Hot.out per 30" << std::endl << std::endl; + + } + + return 0; +} diff --git a/ModifyPermissions.sh b/ModifyPermissions.sh index 488f32d..b8f2e25 100755 --- a/ModifyPermissions.sh +++ b/ModifyPermissions.sh @@ -1,5 +1,5 @@ - +#!/bin/sh you=$1 sudo chown $you /sys/class/backlight/intel_backlight/brightness -ls -l /sys/class/backlight/intel_backlight/ +#ls -l /sys/class/backlight/intel_backlight/ diff --git a/makefile b/makefile index df060dc..2dd033c 100644 --- a/makefile +++ b/makefile @@ -1,2 +1,2 @@ -Hot.out: AlterBrightness.cpp AlterBrightness.h BrightnessControl.cpp Brightness.cpp Brightness.h - g++ AlterBrightness.cpp AlterBrightness.h BrightnessControl.cpp Brightness.cpp Brightness.h -o Hot.out +Hot.out: AlterBrightness.cpp AlterBrightness.h Main.cpp Brightness.cpp Brightness.h + g++ AlterBrightness.cpp AlterBrightness.h Main.cpp Brightness.cpp Brightness.h -o Hot.out