Publishing 2019 R1 content
[platform/upstream/dldt.git] / inference-engine / tests / unit / opencv_test_gapi / fluid_test_computations / fluid_test_computations.hpp
1 // Copyright (C) 2019 Intel Corporation
2 // SPDX-License-Identifier: Apache-2.0
3 //
4
5 #ifndef FLUID_TEST_COMPUTATIONS_HPP
6 #define FLUID_TEST_COMPUTATIONS_HPP
7
8 #include <ie_api.h>
9
10 #include <memory>
11 #include <vector>
12
13 namespace opencv_test
14 {
15 namespace test
16 {
17 struct Mat
18 {
19     int   rows;
20     int   cols;
21     int   type;
22     void* data;
23 };
24 }
25
26 class __attribute__((visibility("default"))) FluidComputation
27 {
28 protected:
29     struct Priv;
30     std::shared_ptr<Priv> m_priv;
31 public:
32     FluidComputation(Priv* priv);
33     void warmUp();
34     void apply();
35 };
36
37 class __attribute__((visibility("default"))) FluidResizeComputation : public FluidComputation
38 {
39 public:
40     FluidResizeComputation(test::Mat inMat, test::Mat outMat, int interp);
41 };
42
43 class __attribute__((visibility("default"))) FluidSplitComputation : public FluidComputation
44 {
45 public:
46     FluidSplitComputation(test::Mat inMat, std::vector<test::Mat> outMats);
47 };
48
49 class __attribute__((visibility("default"))) FluidMergeComputation : public FluidComputation
50 {
51 public:
52     FluidMergeComputation(std::vector<test::Mat> inMats, test::Mat outMat);
53 };
54
55 } // namespace opencv_test
56
57 #endif // FLUID_TEST_COMPUTATIONS_HPP