mirror of
https://github.com/opencv/opencv.git
synced 2025-06-30 00:34:37 +08:00

[G-API] Introduce cv.gin/cv.descr_of for python * Implement cv.gin/cv.descr_of * Fix macos build * Fix gcomputation tests * Add test * Add using to a void exceeded length for windows build * Add using to a void exceeded length for windows build * Fix comments to review * Fix comments to review * Update from latest master * Avoid graph compilation to obtain in/out info * Fix indentation * Fix comments to review * Avoid using default in switches * Post output meta for giebackend
55 lines
1.2 KiB
C++
55 lines
1.2 KiB
C++
// This file is part of OpenCV project.
|
|
// It is subject to the license terms in the LICENSE file found in the top-level directory
|
|
// of this distribution and at http://opencv.org/license.html.
|
|
//
|
|
// Copyright (C) 2018 Intel Corporation
|
|
|
|
|
|
#ifndef OPENCV_GAPI_GCOMPUTATION_PRIV_HPP
|
|
#define OPENCV_GAPI_GCOMPUTATION_PRIV_HPP
|
|
|
|
#include <ade/graph.hpp>
|
|
|
|
#include "opencv2/gapi/util/variant.hpp"
|
|
|
|
#include "opencv2/gapi.hpp"
|
|
#include "opencv2/gapi/gcall.hpp"
|
|
|
|
#include "opencv2/gapi/util/variant.hpp"
|
|
|
|
#include "backends/common/serialization.hpp"
|
|
|
|
namespace cv {
|
|
|
|
struct GraphInfo
|
|
{
|
|
using Ptr = std::shared_ptr<GraphInfo>;
|
|
cv::GTypesInfo inputs;
|
|
cv::GTypesInfo outputs;
|
|
};
|
|
|
|
class GComputation::Priv
|
|
{
|
|
public:
|
|
struct Expr {
|
|
cv::GProtoArgs m_ins;
|
|
cv::GProtoArgs m_outs;
|
|
};
|
|
|
|
using Dump = cv::gapi::s11n::GSerialized;
|
|
|
|
using Shape = cv::util::variant
|
|
< Expr // An expression-based graph
|
|
, Dump // A deserialized graph
|
|
>;
|
|
|
|
GCompiled m_lastCompiled;
|
|
GMetaArgs m_lastMetas; // TODO: make GCompiled remember its metas?
|
|
Shape m_shape;
|
|
GraphInfo::Ptr m_info; // NB: Used by python bridge
|
|
};
|
|
|
|
}
|
|
|
|
#endif // OPENCV_GAPI_GCOMPUTATION_PRIV_HPP
|