Publishing 2019 R1.1 content and Myriad plugin sources (#162)
[platform/upstream/dldt.git] / inference-engine / tests / unit / engines / gna / gna_mock_api.hpp
1 // Copyright (C) 2018-2019 Intel Corporation
2 // SPDX-License-Identifier: Apache-2.0
3 //
4
5 #pragma once
6 #include <gmock/gmock-generated-function-mockers.h>
7
8 class GNACppApi {
9
10  public:
11     GNACppApi();
12     ~GNACppApi();
13     MOCK_METHOD10(GNAScoreGaussians, intel_gna_status_t(
14         //intel_gna_handle_t          nGNADevice,            // handle to GNA accelerator
15         //const intel_feature_type_t* pFeatureType,
16         const intel_feature_t*      pFeatureData,
17         const intel_gmm_type_t*     pModelType,
18         const intel_gmm_t*          pModelData,
19         const uint32_t*             pActiveGMMIndices,
20         uint32_t                    nActiveGMMIndices,
21         uint32_t                    uMaximumScore,
22         intel_gmm_mode_t            nGMMMode,
23         uint32_t*                   pScores,
24         uint32_t*                   pReqId,
25         intel_gna_proc_t            nAccelerationType));
26
27
28     MOCK_METHOD6(GNAPropagateForward, intel_gna_status_t (
29         intel_gna_handle_t          nGNADevice,            // handle to GNA accelerator
30         const intel_nnet_type_t*    pNeuralNetwork,
31         const uint32_t*             pActiveIndices,
32         uint32_t                    nActiveIndices,
33         uint32_t*                   pReqId,
34         intel_gna_proc_t            nAccelerationType));
35
36     MOCK_METHOD3(GNAAlloc, void *(
37         intel_gna_handle_t nGNADevice,   // handle to GNA accelerator
38         uint32_t           sizeRequested,
39         uint32_t*          sizeGranted));
40
41     MOCK_METHOD1(GNAFree, intel_gna_status_t (intel_gna_handle_t nGNADevice));
42
43     MOCK_METHOD1(GNADeviceOpen, intel_gna_handle_t (intel_gna_status_t* status));
44
45     MOCK_METHOD2(GNADeviceOpenSetThreads, intel_gna_handle_t (intel_gna_status_t* status, uint8_t n_threads));
46     MOCK_METHOD1(GNADeviceClose, intel_gna_status_t (intel_gna_handle_t nGNADevice));
47
48     MOCK_METHOD3(GNAWait, intel_gna_status_t(
49                  intel_gna_handle_t nGNADevice,            // handle to GNA accelerator
50                  uint32_t           nTimeoutMilliseconds,
51                  uint32_t           reqId                  // IN score request ID);
52     ));
53
54     MOCK_METHOD4(GNAWaitPerfRes, intel_gna_status_t(
55                  intel_gna_handle_t nGNADevice,            // handle to GNA accelerator
56                  uint32_t           nTimeoutMilliseconds,
57                  uint32_t           reqId,                 // IN score request ID);
58                  intel_gna_perf_t*  nGNAPerfResults
59     ));
60
61     MOCK_METHOD6(GNADumpXnn, void* (
62         const intel_nnet_type_t*    neuralNetwork,
63         const uint32_t*             activeIndices,
64         uint32_t                    activeIndicesCount,
65         intel_gna_model_header*     modelHeader,
66         intel_gna_status_t*         status,
67         intel_gna_alloc_cb          customAlloc));
68
69     MOCK_METHOD1(gmmSetThreads, intel_gna_handle_t (uint8_t num));
70 };