diff options
author | Xusong Wang <xusongw@google.com> | 2018-11-06 18:48:20 -0800 |
---|---|---|
committer | Miao Wang <miaowang@google.com> | 2019-01-24 16:26:31 -0800 |
commit | 7ad42e5f7260d91507139e0a281af45929edf71d (patch) | |
tree | 24f2f48b4030a4b7cde6d1658e15d71799ad3cf0 /nn/runtime/test/TestExecution.cpp | |
parent | 5087dd4e650172af5e45fea7e9f29f71b46248da (diff) | |
download | ml-7ad42e5f7260d91507139e0a281af45929edf71d.tar.gz |
Support dynamic output shape in 1.2 HAL interface.
Modify ExecutionCallback to support getting output shapes from device.
The sample driver is currently only returning an empty list, will return
the actual shape information in a subsequent CL.
Bug: 73506513
Test: NeuralNetworksTest_static
Change-Id: Ib0e176d92c7b548ee83c11a576976d8a536e51e6
Merged-In: Ib0e176d92c7b548ee83c11a576976d8a536e51e6
(cherry picked from commit 174503e583deca3726d6b2f9975f828bcad3fb4f)
Diffstat (limited to 'nn/runtime/test/TestExecution.cpp')
-rw-r--r-- | nn/runtime/test/TestExecution.cpp | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/nn/runtime/test/TestExecution.cpp b/nn/runtime/test/TestExecution.cpp index dcbfc07ad..7abef57bc 100644 --- a/nn/runtime/test/TestExecution.cpp +++ b/nn/runtime/test/TestExecution.cpp @@ -78,17 +78,21 @@ class TestPreparedModel12 : public V1_2::IPreparedModel { if (mErrorStatus == ErrorStatus::NONE) { return mPreparedModelV1_2->execute_1_2(request, callback); } else { - callback->notify_1_2(mErrorStatus); + callback->notify_1_2(mErrorStatus, {}); return ErrorStatus::NONE; } } - Return<ErrorStatus> executeSynchronously(const Request& request) override { + Return<void> executeSynchronously(const Request& request, executeSynchronously_cb cb) override { CHECK(mPreparedModelV1_2 != nullptr) << "V1_2 prepared model is nullptr."; if (mErrorStatus == ErrorStatus::NONE) { - return mPreparedModelV1_2->executeSynchronously(request); + return mPreparedModelV1_2->executeSynchronously( + request, [&cb](ErrorStatus error, const hidl_vec<OutputShape>& outputShapes) { + cb(error, outputShapes); + }); } else { - return mErrorStatus; + cb(mErrorStatus, {}); + return Void(); } } |