Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 077cc1fe authored by Amy Zhang's avatar Amy Zhang
Browse files

Implement TunerLnb interface APIs

Test: make libtunerservice
Bug: 159067322
Change-Id: I4f54e68fede3878afff96cb4959a831d377e975f
parent a046eeef
Loading
Loading
Loading
Loading
+41 −12
Original line number Diff line number Diff line
@@ -18,6 +18,9 @@

#include "TunerLnb.h"

using ::android::hardware::tv::tuner::V1_0::LnbPosition;
using ::android::hardware::tv::tuner::V1_0::LnbTone;
using ::android::hardware::tv::tuner::V1_0::LnbVoltage;
using ::android::hardware::tv::tuner::V1_0::Result;

namespace android {
@@ -45,31 +48,57 @@ Status TunerLnb::setCallback(

    sp<ILnbCallback> lnbCallback = new LnbCallback(tunerLnbCallback);
    Result status = mLnb->setCallback(lnbCallback);
    if (status == Result::SUCCESS) {
        return Status::ok();
    return Status::fromServiceSpecificError(static_cast<int32_t>(status));
}

Status TunerLnb::setVoltage(int voltage) {
    if (mLnb == NULL) {
        ALOGE("ILnb is not initialized");
        return Status::fromServiceSpecificError(static_cast<int32_t>(Result::UNAVAILABLE));
    }

    Result status = mLnb->setVoltage(static_cast<LnbVoltage>(voltage));
    return Status::fromServiceSpecificError(static_cast<int32_t>(status));
}

Status TunerLnb::setTone(int tone) {
    if (mLnb == NULL) {
        ALOGE("ILnb is not initialized");
        return Status::fromServiceSpecificError(static_cast<int32_t>(Result::UNAVAILABLE));
    }

    Result status = mLnb->setTone(static_cast<LnbTone>(tone));
    return Status::fromServiceSpecificError(static_cast<int32_t>(status));
}

Status TunerLnb::setVoltage(int /*voltage*/) {
    return Status::ok();
Status TunerLnb::setSatellitePosition(int position) {
    if (mLnb == NULL) {
        ALOGE("ILnb is not initialized");
        return Status::fromServiceSpecificError(static_cast<int32_t>(Result::UNAVAILABLE));
    }

Status TunerLnb::setTone(int /*voltage*/) {
    return Status::ok();
    Result status = mLnb->setSatellitePosition(static_cast<LnbPosition>(position));
    return Status::fromServiceSpecificError(static_cast<int32_t>(status));
}

Status TunerLnb::setSatellitePosition(int /*position*/) {
    return Status::ok();
Status TunerLnb::sendDiseqcMessage(const vector<uint8_t>& diseqcMessage) {
    if (mLnb == NULL) {
        ALOGE("ILnb is not initialized");
        return Status::fromServiceSpecificError(static_cast<int32_t>(Result::UNAVAILABLE));
    }

Status TunerLnb::sendDiseqcMessage(const vector<uint8_t>& /*diseqcMessage*/) {
    return Status::ok();
    Result status = mLnb->sendDiseqcMessage(diseqcMessage);
    return Status::fromServiceSpecificError(static_cast<int32_t>(status));
}

Status TunerLnb::close() {
    return Status::ok();
    if (mLnb == NULL) {
        ALOGE("ILnb is not initialized");
        return Status::fromServiceSpecificError(static_cast<int32_t>(Result::UNAVAILABLE));
    }

    Result status = mLnb->close();
    return Status::fromServiceSpecificError(static_cast<int32_t>(status));
}

/////////////// ILnbCallback ///////////////////////
+1 −1
Original line number Diff line number Diff line
@@ -44,7 +44,7 @@ public:
    virtual ~TunerLnb();
    Status setCallback(const shared_ptr<ITunerLnbCallback>& tunerLnbCallback) override;
    Status setVoltage(int voltage) override;
    Status setTone(int voltage) override;
    Status setTone(int tone) override;
    Status setSatellitePosition(int position) override;
    Status sendDiseqcMessage(const vector<uint8_t>& diseqcMessage) override;
    Status close() override;