Publishing 2019 R1 content
[platform/upstream/dldt.git] / inference-engine / src / inference_engine / network_serializer.h
1 // Copyright (C) 2018-2019 Intel Corporation
2 // SPDX-License-Identifier: Apache-2.0
3 //
4
5 #pragma once
6
7 #include <string>
8
9 #include "xml_parse_utils.h"
10
11 namespace InferenceEngine {
12 namespace details {
13
14 /**
15 * Class for serialization of model been presented as ICNNNetwork to the disk
16 */
17 class NetworkSerializer {
18 public:
19     static void serialize(const std::string &xmlPath, const std::string &binPath, const InferenceEngine::ICNNNetwork& network);
20
21 private:
22     static void updateStdLayerParams(const InferenceEngine::CNNLayer::Ptr &layer);
23     static void updatePreProcInfo(const InferenceEngine::ICNNNetwork& network, pugi::xml_node &netXml);
24     static void updateStatisticsInfo(const InferenceEngine::ICNNNetwork& network, pugi::xml_node &netXml);
25 };
26
27 }  // namespace details
28 }  // namespace InferenceEngine