Es/lpt/lpt to ngraph fixes2 with master (#2671)
[platform/upstream/dldt.git] / inference-engine / tests / ngraph_functions / include / ngraph_functions / low_precision_transformations / interpolate_function.hpp
1 // Copyright (C) 2020 Intel Corporation
2 // SPDX-License-Identifier: Apache-2.0
3 //
4
5 #pragma once
6
7 #include <memory>
8 #include <ngraph/ngraph.hpp>
9 #include "ngraph_functions/low_precision_transformations/common/dequantization_operations.hpp"
10
11 namespace ngraph {
12 namespace builder {
13 namespace subgraph {
14
15 class InterpolateFunction {
16 public:
17     static std::shared_ptr<ngraph::Function> getOriginal(
18         const ngraph::Shape& inputShape,
19         const ngraph::Shape& outputShape,
20         const ngraph::op::InterpolateAttrs& interpAttrs,
21         const ngraph::element::Type precisionBeforeDequantization,
22         const ngraph::builder::subgraph::DequantizationOperations& dequantization);
23
24     static std::shared_ptr<ngraph::Function> getOriginal(
25         const ngraph::element::Type precision,
26         const ngraph::Shape& inputShape,
27         const ngraph::Shape& outputShape,
28         const ngraph::op::InterpolateAttrs& interpAttrs);
29
30     static std::shared_ptr<ngraph::Function> getReference(
31         const ngraph::Shape& inputShape,
32         const ngraph::Shape& outputShape,
33         const ngraph::op::InterpolateAttrs& interpAttrs,
34         const ngraph::element::Type precisionBeforeDequantization,
35         const ngraph::builder::subgraph::DequantizationOperations& dequantizationBefore,
36         const ngraph::element::Type precisionAfterOperation,
37         const ngraph::builder::subgraph::DequantizationOperations& dequantizationAfter);
38 };
39
40 }  // namespace subgraph
41 }  // namespace builder
42 }  // namespace ngraph