davinci: fod: Implement handleAcquire()
Change-Id: Ica796fbd468e2df0ee666a0d0c6cbde628d6989f
This commit is contained in:
parent
48c907ba7c
commit
42d82f7684
@ -22,6 +22,8 @@
|
|||||||
#include <fstream>
|
#include <fstream>
|
||||||
#include <cmath>
|
#include <cmath>
|
||||||
|
|
||||||
|
#define FINGERPRINT_ACQUIRED_VENDOR 6
|
||||||
|
|
||||||
#define COMMAND_NIT 10
|
#define COMMAND_NIT 10
|
||||||
#define PARAM_NIT_FOD 1
|
#define PARAM_NIT_FOD 1
|
||||||
#define PARAM_NIT_NONE 0
|
#define PARAM_NIT_NONE 0
|
||||||
@ -113,7 +115,29 @@ Return<void> FingerprintInscreen::onHideFODView() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
Return<bool> FingerprintInscreen::handleAcquired(int32_t acquiredInfo, int32_t vendorCode) {
|
Return<bool> FingerprintInscreen::handleAcquired(int32_t acquiredInfo, int32_t vendorCode) {
|
||||||
LOG(ERROR) << "acquiredInfo: " << acquiredInfo << ", vendorCode: " << vendorCode;
|
std::lock_guard<std::mutex> _lock(mCallbackLock);
|
||||||
|
if (mCallback == nullptr) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (acquiredInfo == FINGERPRINT_ACQUIRED_VENDOR) {
|
||||||
|
if (vendorCode == 0) {
|
||||||
|
Return<void> ret = mCallback->onFingerDown();
|
||||||
|
if (!ret.isOk()) {
|
||||||
|
LOG(ERROR) << "FingerDown() error: " << ret.description();
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (vendorCode == 1) {
|
||||||
|
Return<void> ret = mCallback->onFingerUp();
|
||||||
|
if (!ret.isOk()) {
|
||||||
|
LOG(ERROR) << "FingerUp() error: " << ret.description();
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -143,7 +167,12 @@ Return<bool> FingerprintInscreen::shouldBoostBrightness() {
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
Return<void> FingerprintInscreen::setCallback(const sp<IFingerprintInscreenCallback>& /* callback */) {
|
Return<void> FingerprintInscreen::setCallback(const sp<IFingerprintInscreenCallback>& callback) {
|
||||||
|
{
|
||||||
|
std::lock_guard<std::mutex> _lock(mCallbackLock);
|
||||||
|
mCallback = callback;
|
||||||
|
}
|
||||||
|
|
||||||
return Void();
|
return Void();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -54,6 +54,9 @@ public:
|
|||||||
|
|
||||||
private:
|
private:
|
||||||
sp<IXiaomiFingerprint> xiaomiFingerprintService;
|
sp<IXiaomiFingerprint> xiaomiFingerprintService;
|
||||||
|
|
||||||
|
std::mutex mCallbackLock;
|
||||||
|
sp<IFingerprintInscreenCallback> mCallback;
|
||||||
};
|
};
|
||||||
|
|
||||||
} // namespace implementation
|
} // namespace implementation
|
||||||
|
Loading…
Reference in New Issue
Block a user