diff options
author | Paul Keith <javelinanddart@gmail.com> | 2019-02-07 09:57:05 -0600 |
---|---|---|
committer | Paul Keith <javelinanddart@gmail.com> | 2019-02-10 14:15:56 -0600 |
commit | 8d13803c5eaa56097b6b80f2568f198c6bbc5fb1 (patch) | |
tree | 3d956bb36a5f04a04d1b98b9fa862efbdd497233 /sysfs/AutoContrast.cpp | |
parent | 781eb9d465e1a7c0ff78e259d8ac171a260052ff (diff) | |
download | android_hardware_lineage_livedisplay-8d13803c5eaa56097b6b80f2568f198c6bbc5fb1.tar.gz android_hardware_lineage_livedisplay-8d13803c5eaa56097b6b80f2568f198c6bbc5fb1.tar.bz2 android_hardware_lineage_livedisplay-8d13803c5eaa56097b6b80f2568f198c6bbc5fb1.zip |
livedisplay: sysfs: Wire it up
Change-Id: I8e8e222f94bcf86d4ded3d8dc57cc6c70ee7634a
Diffstat (limited to 'sysfs/AutoContrast.cpp')
-rw-r--r-- | sysfs/AutoContrast.cpp | 35 |
1 files changed, 24 insertions, 11 deletions
diff --git a/sysfs/AutoContrast.cpp b/sysfs/AutoContrast.cpp index 522014c..906f6a1 100644 --- a/sysfs/AutoContrast.cpp +++ b/sysfs/AutoContrast.cpp @@ -14,32 +14,45 @@ * limitations under the License. */ +#include <android-base/file.h> +#include <android-base/strings.h> + +#include <fstream> + #include "AutoContrast.h" +using android::base::ReadFileToString; +using android::base::Trim; +using android::base::WriteStringToFile; + namespace vendor { namespace lineage { namespace livedisplay { namespace V2_0 { namespace sysfs { +bool AutoContrast::isSupported() { + std::fstream aco(FILE_ACO, aco.in | aco.out); + + return aco.good(); +} + // Methods from ::vendor::lineage::livedisplay::V2_0::IAutoContrast follow. Return<bool> AutoContrast::isEnabled() { - // TODO implement - return bool {}; + std::string tmp; + int32_t contents = 0; + + if (ReadFileToString(FILE_ACO, &tmp)) { + contents = std::stoi(Trim(tmp)); + } + + return contents > 0; } Return<bool> AutoContrast::setEnabled(bool enabled) { - // TODO implement - return bool {}; + return WriteStringToFile(enabled ? "1" : "0", FILE_ACO, true); } - -// Methods from ::android::hidl::base::V1_0::IBase follow. - -//IAutoContrast* HIDL_FETCH_IAutoContrast(const char* /* name */) { - //return new AutoContrast(); -//} -// } // namespace sysfs } // namespace V2_0 } // namespace livedisplay |