1 #ifndef ANDROID_HARDWARE_TESTS_FOO_V1_0_FOOCALLBACK_H 2 #define ANDROID_HARDWARE_TESTS_FOO_V1_0_FOOCALLBACK_H 3 4 #include <android/hardware/tests/foo/1.0/IFooCallback.h> 5 #include <hidl/Status.h> 6 #include <hidl/MQDescriptor.h> 7 8 #include <utils/Condition.h> 9 namespace android { 10 namespace hardware { 11 namespace tests { 12 namespace foo { 13 namespace V1_0 { 14 namespace implementation { 15 16 using ::android::hardware::tests::foo::V1_0::IFooCallback; 17 using ::android::hardware::Return; 18 using ::android::hardware::Void; 19 using ::android::hardware::hidl_vec; 20 using ::android::hardware::hidl_string; 21 using ::android::sp; 22 23 struct FooCallback : public IFooCallback { 24 FooCallback(); 25 // Methods from ::android::hardware::tests::foo::V1_0::IFooCallback follow. 26 Return<void> heyItsYou(const sp<IFooCallback>& cb) override; 27 Return<bool> heyItsYouIsntIt(const sp<IFooCallback>& cb) override; 28 Return<void> heyItsTheMeaningOfLife(uint8_t tmol) override; 29 Return<void> reportResults(int64_t ns, reportResults_cb _hidl_cb) override; 30 Return<void> youBlockedMeFor(const hidl_array<int64_t, 3 /* 3 */>& callerBlockedInfo) override; 31 32 hidl_array<InvokeInfo, 3> invokeInfo; 33 Mutex mLock; 34 Condition mCond; 35 }; 36 37 extern "C" IFooCallback* HIDL_FETCH_IFooCallback(const char* name); 38 39 } // namespace implementation 40 } // namespace V1_0 41 } // namespace foo 42 } // namespace tests 43 } // namespace hardware 44 } // namespace android 45 46 #endif // ANDROID_HARDWARE_TESTS_FOO_V1_0_FOOCALLBACK_H 47