hidl: consumerir: Fill in implementation for IR hal

Change-Id: I0b69cce74a6fce9bf720508c279df67c49641c49
tirimbino
Paul Keith 5 years ago committed by Jan Altensen
parent b43a8d575d
commit 0322a6f345
No known key found for this signature in database
GPG Key ID: 3E45BB95F7AD33DA
  1. 25
      hidl/consumerir/ConsumerIr.cpp

@ -18,6 +18,12 @@
#include <samsung_ir.h>
#include <android-base/file.h>
#include <android-base/strings.h>
using android::base::Join;
using android::base::WriteStringToFile;
namespace android {
namespace hardware {
namespace ir {
@ -26,12 +32,25 @@ namespace implementation {
// Methods from ::android::hardware::ir::V1_0::IConsumerIr follow.
Return<bool> ConsumerIr::transmit(int32_t carrierFreq, const hidl_vec<int32_t>& pattern) {
// TODO implement
return bool {};
float factor;
std::vector<int32_t> buffer{carrierFreq};
#ifndef MS_IR_SIGNAL
// Calculate factor of conversion from microseconds to pulses
factor = 1000000 / carrierFreq;
#else
factor = 1;
#endif
for (const int32_t& number : pattern) {
buffer.emplace_back(number / factor);
}
return WriteStringToFile(Join(buffer, ','), IR_PATH, true);
}
Return<void> ConsumerIr::getCarrierFreqs(getCarrierFreqs_cb _hidl_cb) {
// TODO implement
_hidl_cb(true, consumerirFreqs);
return Void();
}

Loading…
Cancel
Save