blob: 3164a9da18e22d400a9cec680d9d871882a91262 [file] [log] [blame]
Yifan Hong11992a62016-11-09 18:07:40 -08001#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>
9namespace android {
10namespace hardware {
11namespace tests {
12namespace foo {
13namespace V1_0 {
14namespace implementation {
15
16using ::android::hardware::tests::foo::V1_0::IFooCallback;
17using ::android::hardware::Return;
18using ::android::hardware::Void;
19using ::android::hardware::hidl_vec;
20using ::android::hardware::hidl_string;
21using ::android::sp;
22
23struct 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
37extern "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