VART-X  0.3.0
vart_metaconvert.hpp
Go to the documentation of this file.
1 /*
2  * Copyright 2024-2026 Advanced Micro Devices Inc.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 #pragma once
18 
24 #include "vart_device.hpp"
25 #include "vart_inferresult.hpp"
26 #include "vart_overlay_types.hpp"
27 
30 namespace vart {
31 
35 class MetaConvertImplBase;
36 
49 class MetaConvert {
50  public:
51  MetaConvert() = delete;
52 
65  MetaConvert(InferResultType infer_res_type, std::string& json_data, std::shared_ptr<Device> device);
66 
75  MetaConvert(std::shared_ptr<MetaConvertImplBase> ptr);
76 
83  const std::shared_ptr<MetaConvertImplBase>& get_pimpl_handle() const;
84 
100  std::shared_ptr<OverlayShapeInfo> prepare_overlay_meta(std::shared_ptr<InferResult> root_infer_res);
101 
102  private:
103  std::shared_ptr<MetaConvertImplBase> pimpl;
104 };
105 
106 } // namespace vart
This module facilitates the conversion of Infer metadata into a format compatible with the overlay mo...
Definition: vart_metaconvert.hpp:49
MetaConvert(InferResultType infer_res_type, std::string &json_data, std::shared_ptr< Device > device)
MetaConvert() - Constructor for using existing metaconvert implementations.
std::shared_ptr< OverlayShapeInfo > prepare_overlay_meta(std::shared_ptr< InferResult > root_infer_res)
prepare_overlay_meta() - Converts inference results to data structures needed for overlay Overlay
MetaConvert(std::shared_ptr< MetaConvertImplBase > ptr)
MetaConvert() - Constructor for using user defined implementation.
MetaConvert()=delete
const std::shared_ptr< MetaConvertImplBase > & get_pimpl_handle() const
get_pimpl_handle() - Gives pointer to implementation class.
VART (Vitis AI Runtime) public API namespace.
InferResultType
Definition: vart_inferresult_types.hpp:37
Device module managing hardware context and xclbin loading.
InferResult module for representing inference results.