Loading tv/hdmi/cec/aidl/default/HdmiCecMock.cpp +14 −3 Original line number Diff line number Diff line Loading @@ -36,6 +36,7 @@ void HdmiCecMock::serviceDied(void* cookie) { ALOGE("HdmiCecMock died"); auto hdmiCecMock = static_cast<HdmiCecMock*>(cookie); hdmiCecMock->mCecThreadRun = false; pthread_join(hdmiCecMock->mThreadId, NULL); } ScopedAStatus HdmiCecMock::addLogicalAddress(CecLogicalAddress addr, Result* _aidl_return) { Loading Loading @@ -89,7 +90,9 @@ ScopedAStatus HdmiCecMock::setCallback(const std::shared_ptr<IHdmiCecCallback>& mCallback = callback; if (callback != nullptr) { AIBinder_linkToDeath(this->asBinder().get(), mDeathRecipient.get(), 0 /* cookie */); mDeathRecipient = ndk::ScopedAIBinder_DeathRecipient(AIBinder_DeathRecipient_new(serviceDied)); AIBinder_linkToDeath(callback->asBinder().get(), mDeathRecipient.get(), this /* cookie */); mInputFile = open(CEC_MSG_IN_FIFO, O_RDWR | O_CLOEXEC); mOutputFile = open(CEC_MSG_OUT_FIFO, O_RDWR | O_CLOEXEC); Loading Loading @@ -220,7 +223,7 @@ void HdmiCecMock::threadLoop() { int r = -1; // Open the input pipe while (mInputFile < 0) { while (mCecThreadRun && mInputFile < 0) { usleep(1000 * 1000); mInputFile = open(CEC_MSG_IN_FIFO, O_RDONLY | O_CLOEXEC); } Loading Loading @@ -257,7 +260,15 @@ void HdmiCecMock::threadLoop() { HdmiCecMock::HdmiCecMock() { ALOGE("[halimp_aidl] Opening a virtual CEC HAL for testing and virtual machine."); mCallback = nullptr; mDeathRecipient = ndk::ScopedAIBinder_DeathRecipient(AIBinder_DeathRecipient_new(serviceDied)); mDeathRecipient = ndk::ScopedAIBinder_DeathRecipient(nullptr); } HdmiCecMock::~HdmiCecMock() { ALOGE("[halimp_aidl] HdmiCecMock shutting down."); mCallback = nullptr; mDeathRecipient = ndk::ScopedAIBinder_DeathRecipient(nullptr); mCecThreadRun = false; pthread_join(mThreadId, NULL); } } // namespace implementation Loading tv/hdmi/cec/aidl/default/HdmiCecMock.h +1 −0 Original line number Diff line number Diff line Loading @@ -40,6 +40,7 @@ using ::aidl::android::hardware::tv::hdmi::cec::SendMessageResult; struct HdmiCecMock : public BnHdmiCec { HdmiCecMock(); ~HdmiCecMock(); ::ndk::ScopedAStatus addLogicalAddress(CecLogicalAddress addr, Result* _aidl_return) override; ::ndk::ScopedAStatus clearLogicalAddress() override; ::ndk::ScopedAStatus enableAudioReturnChannel(int32_t portId, bool enable) override; Loading Loading
tv/hdmi/cec/aidl/default/HdmiCecMock.cpp +14 −3 Original line number Diff line number Diff line Loading @@ -36,6 +36,7 @@ void HdmiCecMock::serviceDied(void* cookie) { ALOGE("HdmiCecMock died"); auto hdmiCecMock = static_cast<HdmiCecMock*>(cookie); hdmiCecMock->mCecThreadRun = false; pthread_join(hdmiCecMock->mThreadId, NULL); } ScopedAStatus HdmiCecMock::addLogicalAddress(CecLogicalAddress addr, Result* _aidl_return) { Loading Loading @@ -89,7 +90,9 @@ ScopedAStatus HdmiCecMock::setCallback(const std::shared_ptr<IHdmiCecCallback>& mCallback = callback; if (callback != nullptr) { AIBinder_linkToDeath(this->asBinder().get(), mDeathRecipient.get(), 0 /* cookie */); mDeathRecipient = ndk::ScopedAIBinder_DeathRecipient(AIBinder_DeathRecipient_new(serviceDied)); AIBinder_linkToDeath(callback->asBinder().get(), mDeathRecipient.get(), this /* cookie */); mInputFile = open(CEC_MSG_IN_FIFO, O_RDWR | O_CLOEXEC); mOutputFile = open(CEC_MSG_OUT_FIFO, O_RDWR | O_CLOEXEC); Loading Loading @@ -220,7 +223,7 @@ void HdmiCecMock::threadLoop() { int r = -1; // Open the input pipe while (mInputFile < 0) { while (mCecThreadRun && mInputFile < 0) { usleep(1000 * 1000); mInputFile = open(CEC_MSG_IN_FIFO, O_RDONLY | O_CLOEXEC); } Loading Loading @@ -257,7 +260,15 @@ void HdmiCecMock::threadLoop() { HdmiCecMock::HdmiCecMock() { ALOGE("[halimp_aidl] Opening a virtual CEC HAL for testing and virtual machine."); mCallback = nullptr; mDeathRecipient = ndk::ScopedAIBinder_DeathRecipient(AIBinder_DeathRecipient_new(serviceDied)); mDeathRecipient = ndk::ScopedAIBinder_DeathRecipient(nullptr); } HdmiCecMock::~HdmiCecMock() { ALOGE("[halimp_aidl] HdmiCecMock shutting down."); mCallback = nullptr; mDeathRecipient = ndk::ScopedAIBinder_DeathRecipient(nullptr); mCecThreadRun = false; pthread_join(mThreadId, NULL); } } // namespace implementation Loading
tv/hdmi/cec/aidl/default/HdmiCecMock.h +1 −0 Original line number Diff line number Diff line Loading @@ -40,6 +40,7 @@ using ::aidl::android::hardware::tv::hdmi::cec::SendMessageResult; struct HdmiCecMock : public BnHdmiCec { HdmiCecMock(); ~HdmiCecMock(); ::ndk::ScopedAStatus addLogicalAddress(CecLogicalAddress addr, Result* _aidl_return) override; ::ndk::ScopedAStatus clearLogicalAddress() override; ::ndk::ScopedAStatus enableAudioReturnChannel(int32_t portId, bool enable) override; Loading