Need to switch from bash-based to c++ based
This commit is contained in:
@@ -0,0 +1,104 @@
|
|||||||
|
#include <iostream>
|
||||||
|
#include <fstream>
|
||||||
|
#include <ios>
|
||||||
|
#include "AlterBrightness.h"
|
||||||
|
using namespace std;
|
||||||
|
|
||||||
|
AlterBrightness::AlterBrightness()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
AlterBrightness::AlterBrightness(unsigned& change, unsigned& current, unsigned& max)
|
||||||
|
{
|
||||||
|
increment = change;
|
||||||
|
decrement = change;
|
||||||
|
currentBrightness = current;
|
||||||
|
maxBrightness = max;
|
||||||
|
}
|
||||||
|
|
||||||
|
void AlterBrightness::setIncrement(unsigned& change)
|
||||||
|
{
|
||||||
|
increment = change;
|
||||||
|
}
|
||||||
|
void AlterBrightness::setDecrement(unsigned& change)
|
||||||
|
{
|
||||||
|
decrement = change;
|
||||||
|
}
|
||||||
|
void AlterBrightness::setCurrentBrightness(unsigned& current)
|
||||||
|
{
|
||||||
|
currentBrightness = current;
|
||||||
|
}
|
||||||
|
void AlterBrightness::setMaxBrightness(unsigned& max)
|
||||||
|
{
|
||||||
|
maxBrightness = max;
|
||||||
|
}
|
||||||
|
|
||||||
|
void AlterBrightness::chooseChange(char* changeChoice[])
|
||||||
|
{
|
||||||
|
ofstream s;
|
||||||
|
s.open("/sys/class/backlight/intel_backlight/brightness", ios::out);
|
||||||
|
//std::cout << changeChoice << std::endl;
|
||||||
|
//if (1)
|
||||||
|
// std::cout << changeChoice.compare("inc") << std::endl;
|
||||||
|
//else
|
||||||
|
// std::cout << "0 is not true" << std::endl;
|
||||||
|
//if (changeChoice.compare(AlterBrightness::getIncrease()) == 0)
|
||||||
|
if (strcmp(*changeChoice, AlterBrightness::getIncrease()) == 0)
|
||||||
|
{
|
||||||
|
AlterBrightness::increaseBrightness();
|
||||||
|
std::cout << "Increase" << std::endl;
|
||||||
|
std::cout << AlterBrightness::getCurrentBrightness();
|
||||||
|
s << AlterBrightness::getCurrentBrightness();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
AlterBrightness::decreaseBrightness();
|
||||||
|
std::cout << AlterBrightness::getCurrentBrightness();
|
||||||
|
s << AlterBrightness::getCurrentBrightness();
|
||||||
|
}
|
||||||
|
s.close();
|
||||||
|
}
|
||||||
|
void AlterBrightness::increaseBrightness()
|
||||||
|
{
|
||||||
|
if (AlterBrightness::getCurrentBrightness() + AlterBrightness::getIncrement() < AlterBrightness::getMaxBrightness())
|
||||||
|
{
|
||||||
|
currentBrightness = AlterBrightness::getCurrentBrightness() + AlterBrightness::getIncrement();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
currentBrightness = AlterBrightness::getMaxBrightness();
|
||||||
|
}
|
||||||
|
void AlterBrightness::decreaseBrightness()
|
||||||
|
{
|
||||||
|
if (AlterBrightness::getCurrentBrightness() - AlterBrightness::getDecrement() > 0)
|
||||||
|
{
|
||||||
|
currentBrightness = AlterBrightness::getCurrentBrightness() - AlterBrightness::getDecrement();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
currentBrightness = 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
unsigned AlterBrightness::getIncrement() const
|
||||||
|
{
|
||||||
|
return increment;
|
||||||
|
}
|
||||||
|
unsigned AlterBrightness::getDecrement() const
|
||||||
|
{
|
||||||
|
return decrement;
|
||||||
|
}
|
||||||
|
unsigned AlterBrightness::getCurrentBrightness() const
|
||||||
|
{
|
||||||
|
return currentBrightness;
|
||||||
|
}
|
||||||
|
unsigned AlterBrightness::getMaxBrightness() const
|
||||||
|
{
|
||||||
|
return maxBrightness;
|
||||||
|
}
|
||||||
|
|
||||||
|
char* AlterBrightness::getIncrease()
|
||||||
|
{
|
||||||
|
return increase;
|
||||||
|
}
|
||||||
|
char* AlterBrightness::getDecrease()
|
||||||
|
{
|
||||||
|
return decrease;
|
||||||
|
}
|
||||||
@@ -0,0 +1,39 @@
|
|||||||
|
#ifndef ALTERBRIGHTNESS_H
|
||||||
|
#define ALTERBRIGHTNESS_H
|
||||||
|
#include <cstring>
|
||||||
|
#include <string>
|
||||||
|
|
||||||
|
class AlterBrightness
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
AlterBrightness();
|
||||||
|
|
||||||
|
AlterBrightness(unsigned&, unsigned&, unsigned&);
|
||||||
|
|
||||||
|
void setIncrement(unsigned&);
|
||||||
|
void setDecrement(unsigned&);
|
||||||
|
void setCurrentBrightness(unsigned&);
|
||||||
|
void setMaxBrightness(unsigned&);
|
||||||
|
|
||||||
|
void chooseChange(char*[]);
|
||||||
|
void increaseBrightness();
|
||||||
|
void decreaseBrightness();
|
||||||
|
|
||||||
|
unsigned getIncrement() const;
|
||||||
|
unsigned getDecrement() const;
|
||||||
|
unsigned getCurrentBrightness() const;
|
||||||
|
unsigned getMaxBrightness() const;
|
||||||
|
|
||||||
|
char* getIncrease();
|
||||||
|
char* getDecrease();
|
||||||
|
|
||||||
|
private:
|
||||||
|
unsigned increment;
|
||||||
|
unsigned decrement;
|
||||||
|
unsigned currentBrightness;
|
||||||
|
unsigned maxBrightness;
|
||||||
|
char* increase = "inc";
|
||||||
|
char* decrease = "dec";
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
#include <cstring>
|
||||||
|
#include "AlterBrightness.h"
|
||||||
|
|
||||||
|
int main(int argc, char* argv[])
|
||||||
|
{
|
||||||
|
AlterBrightness ab;
|
||||||
|
char* ci = "sdfsdfd";
|
||||||
|
char* control[strlen(*(argv + 1))] = {*(argv + 1)};
|
||||||
|
unsigned changeAmount = atoi(*(argv + 2));
|
||||||
|
unsigned currentBrightness = atoi(*(argv + 3));
|
||||||
|
unsigned maxBrightness = atoi(*(argv + 4));
|
||||||
|
|
||||||
|
ab.setIncrement(changeAmount);
|
||||||
|
ab.setDecrement(changeAmount);
|
||||||
|
ab.setCurrentBrightness(currentBrightness);
|
||||||
|
ab.setMaxBrightness(maxBrightness);
|
||||||
|
|
||||||
|
std::string ctl(*(control));
|
||||||
|
ab.chooseChange((control));
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user