1 #ifndef OPENPOSE_CORE_MACROS_HPP
2 #define OPENPOSE_CORE_MACROS_HPP
10 #include <opencv2/core/core.hpp>
20 #elif defined OP_EXPORTS
21 #define OP_API __declspec(dllexport)
23 #define OP_API __declspec(dllimport)
28 #pragma warning ( disable : 4251 ) // XXX needs to have dll-interface to be used by clients of class YYY
29 #pragma warning( disable: 4275 ) // non dll-interface structXXX used as base
32 #define UNUSED(unusedVariable) (void)(unusedVariable)
34 #define DELETE_COPY(className) \
35 className(const className&) = delete; \
36 className& operator=(const className&) = delete
39 #define COMPILE_TEMPLATE_BASIC_TYPES_CLASS(className) COMPILE_TEMPLATE_BASIC_TYPES(className, class)
40 #define COMPILE_TEMPLATE_BASIC_TYPES_STRUCT(className) COMPILE_TEMPLATE_BASIC_TYPES(className, struct)
41 #define COMPILE_TEMPLATE_BASIC_TYPES(className, classType) \
42 template classType OP_API className<char>; \
43 template classType OP_API className<signed char>; \
44 template classType OP_API className<short>; \
45 template classType OP_API className<int>; \
46 template classType OP_API className<long>; \
47 template classType OP_API className<long long>; \
48 template classType OP_API className<unsigned char>; \
49 template classType OP_API className<unsigned short>; \
50 template classType OP_API className<unsigned int>; \
51 template classType OP_API className<unsigned long>; \
52 template classType OP_API className<unsigned long long>; \
53 template classType OP_API className<float>; \
54 template classType OP_API className<double>; \
55 template classType OP_API className<long double>
61 #define OVERLOAD_C_OUT(className) \
62 template<typename T> std::ostream &operator<<(std::ostream& ostream, const op::className<T>& obj) \
64 ostream << obj.toString(); \
69 #define COMPILE_TEMPLATE_FLOATING_TYPES_CLASS(className) COMPILE_TEMPLATE_FLOATING_TYPES(className, class)
70 #define COMPILE_TEMPLATE_FLOATING_TYPES_STRUCT(className) COMPILE_TEMPLATE_FLOATING_TYPES(className, struct)
71 #define COMPILE_TEMPLATE_FLOATING_TYPES(className, classType) \
72 char gInstantiationGuard##className; \
73 template classType OP_API className<float>; \
74 template classType OP_API className<double>
81 template <
typename T>
class Blob;
95 #if (defined(CV_MAJOR_VERSION) && CV_MAJOR_VERSION > 3)
96 #define OPEN_CV_IS_4_OR_HIGHER
98 #ifdef OPEN_CV_IS_4_OR_HIGHER
99 #define CV_BGR2GRAY cv::COLOR_BGR2GRAY
100 #define CV_CALIB_CB_ADAPTIVE_THRESH cv::CALIB_CB_ADAPTIVE_THRESH
101 #define CV_CALIB_CB_NORMALIZE_IMAGE cv::CALIB_CB_NORMALIZE_IMAGE
102 #define CV_CALIB_CB_FILTER_QUADS cv::CALIB_CB_FILTER_QUADS
103 #define CV_CAP_PROP_FPS cv::CAP_PROP_FPS
104 #define CV_CAP_PROP_FRAME_COUNT cv::CAP_PROP_FRAME_COUNT
105 #define CV_CAP_PROP_FRAME_HEIGHT cv::CAP_PROP_FRAME_HEIGHT
106 #define CV_CAP_PROP_FRAME_WIDTH cv::CAP_PROP_FRAME_WIDTH
107 #define CV_CAP_PROP_POS_FRAMES cv::CAP_PROP_POS_FRAMES
108 #define CV_FOURCC cv::VideoWriter::fourcc
109 #define CV_GRAY2BGR cv::COLOR_GRAY2BGR
110 #define CV_HAAR_SCALE_IMAGE cv::CASCADE_SCALE_IMAGE
111 #define CV_INTER_CUBIC cv::INTER_CUBIC
112 #define CV_INTER_LINEAR cv::INTER_LINEAR
113 #define CV_L2 cv::NORM_L2
114 #define CV_TERMCRIT_EPS cv::TermCriteria::Type::EPS
115 #define CV_TERMCRIT_ITER cv::TermCriteria::Type::MAX_ITER
116 #define CV_WARP_INVERSE_MAP cv::WARP_INVERSE_MAP
117 #define CV_WINDOW_FULLSCREEN cv::WINDOW_FULLSCREEN
118 #define CV_WINDOW_KEEPRATIO cv::WINDOW_KEEPRATIO
119 #define CV_WINDOW_NORMAL cv::WINDOW_NORMAL
120 #define CV_WINDOW_OPENGL cv::WINDOW_OPENGL
121 #define CV_WND_PROP_FULLSCREEN cv::WND_PROP_FULLSCREEN
123 #include <opencv2/imgcodecs/imgcodecs.hpp>
124 #ifndef CV_IMWRITE_JPEG_QUALITY
125 #define CV_IMWRITE_JPEG_QUALITY cv::IMWRITE_JPEG_QUALITY
127 #ifndef CV_IMWRITE_PNG_COMPRESSION
128 #define CV_IMWRITE_PNG_COMPRESSION cv::IMWRITE_PNG_COMPRESSION
130 #ifndef CV_LOAD_IMAGE_ANYDEPTH
131 #define CV_LOAD_IMAGE_ANYDEPTH cv::IMREAD_ANYDEPTH
133 #ifndef CV_LOAD_IMAGE_COLOR
134 #define CV_LOAD_IMAGE_COLOR cv::IMREAD_COLOR
136 #ifndef CV_LOAD_IMAGE_GRAYSCALE
137 #define CV_LOAD_IMAGE_GRAYSCALE cv::IMREAD_GRAYSCALE
141 #endif // OPENPOSE_CORE_MACROS_HPP
const std::string OPEN_POSE_VERSION_STRING
Definition: macros.hpp:14
const std::string OPEN_POSE_NAME_AND_VERSION
Definition: macros.hpp:15
Definition: macros.hpp:85
const std::string OPEN_POSE_NAME_STRING
Definition: macros.hpp:13
Definition: macros.hpp:81
std::string string
Definition: cl2.hpp:574