5 #ifndef OPENCV_CORE_CVSTD_WRAPPER_HPP
6 #define OPENCV_CORE_CVSTD_WRAPPER_HPP
8 #include "opencv2/core/cvdef.h"
12 #include <type_traits>
25 template<
typename _Tp,
typename ... A1>
static inline
26 Ptr<_Tp>
makePtr(
const A1&... a1) {
return std::make_shared<_Tp>(a1...); }
35 void operator()(Y* p)
const;
40 template<
typename C,
typename Ret,
typename... Args>
49 typedef decltype(has_parenthesis_operator_check<C>(0)) type;
52 #if __cplusplus >= 201103L || (defined(_MSC_VER) && _MSC_VER >= 1900)
61 template <
typename T,
typename =
void>
102 template<
typename Y = T>
116 template<
class Y,
class Deleter>
132 template<
typename Y>
inline
135 template<
typename Y>
inline
138 template<
typename Y>
inline
142 template<
typename _Tp,
typename ... A1>
static inline
146 return (
Ptr<_Tp>)std::make_shared<_Tp>(a1...);
InputArrayOfArrays InputArrayOfArrays InputOutputArray InputOutputArray InputOutputArray InputOutputArray Size InputOutputArray InputOutputArray T
Definition: calib3d.hpp:1867
static Ptr< _Tp > makePtr(const A1 &... a1)
Definition: cvstd_wrapper.hpp:143
int CvScalar value
Definition: core_c.h:720
int int type
Definition: core_c.h:221
#define CV_NOEXCEPT
Definition: cvdef.h:800
#define CV_CONSTEXPR
Definition: cvdef.h:804
CvRect r
Definition: imgproc_c.h:984
"black box" representation of the file storage associated with a file on disk.
Definition: calib3d.hpp:441
Definition: cvstd_wrapper.hpp:32
Definition: cvstd_wrapper.hpp:74
Ptr(Y *p, D d)
Definition: cvstd_wrapper.hpp:80
T * operator->() const CV_NOEXCEPT
Definition: cvstd_wrapper.hpp:124
void reset(const std::true_type &, Y *ptr)
Definition: cvstd_wrapper.hpp:107
Ptr(const std::true_type &, Y *ptr)
Definition: cvstd_wrapper.hpp:96
Ptr(Ptr< Y > &&o) CV_NOEXCEPT
Definition: cvstd_wrapper.hpp:89
Ptr & operator=(const Ptr &o)
Definition: cvstd_wrapper.hpp:121
Ptr< Y > dynamicCast() const CV_NOEXCEPT
Definition: cvstd_wrapper.hpp:139
Ptr< Y > staticCast() const CV_NOEXCEPT
Definition: cvstd_wrapper.hpp:133
void reset(Y *ptr)
Definition: cvstd_wrapper.hpp:114
void reset(Y *ptr, Deleter d)
Definition: cvstd_wrapper.hpp:117
bool empty() const
Definition: cvstd_wrapper.hpp:130
void release()
Definition: cvstd_wrapper.hpp:128
Ptr(nullptr_t) CV_NOEXCEPT
Definition: cvstd_wrapper.hpp:79
Ptr(Ptr< T > &&o) CV_NOEXCEPT
Definition: cvstd_wrapper.hpp:86
Ptr(std::shared_ptr< T > &&o) CV_NOEXCEPT
Definition: cvstd_wrapper.hpp:92
Ptr(const std::shared_ptr< T > &o) CV_NOEXCEPT
Definition: cvstd_wrapper.hpp:91
Ptr(const Ptr< Y > &r, T *ptr) CV_NOEXCEPT
Definition: cvstd_wrapper.hpp:83
void reset() CV_NOEXCEPT
Definition: cvstd_wrapper.hpp:119
Ptr(const Ptr< Y > &o) CV_NOEXCEPT
Definition: cvstd_wrapper.hpp:88
Ptr(nullptr_t, D d)
Definition: cvstd_wrapper.hpp:81
Ptr() CV_NOEXCEPT
Definition: cvstd_wrapper.hpp:78
std::add_lvalue_reference< T >::type operator*() const CV_NOEXCEPT
Definition: cvstd_wrapper.hpp:125
void reset(const std::false_type &, Y *ptr)
Definition: cvstd_wrapper.hpp:111
Ptr< Y > constCast() const CV_NOEXCEPT
Definition: cvstd_wrapper.hpp:136
Ptr(const Ptr< T > &o) CV_NOEXCEPT
Definition: cvstd_wrapper.hpp:85
Ptr(const std::false_type &, Y *ptr)
Definition: cvstd_wrapper.hpp:100
Ptr(Y *ptr)
Definition: cvstd_wrapper.hpp:103
Ptr & operator=(const Ptr< Y > &o)
Definition: cvstd_wrapper.hpp:122
Definition: cvstd_wrapper.hpp:63
Definition: cvstd_wrapper.hpp:42
static const int value
Definition: cvstd_wrapper.hpp:56