1 #ifndef OPENPOSE_PRODUCER_PRODUCER_HPP
2 #define OPENPOSE_PRODUCER_PRODUCER_HPP
5 #include <opencv2/core/core.hpp>
6 #include <opencv2/highgui/highgui.hpp>
42 std::vector<cv::Mat> getFrames();
48 virtual std::vector<cv::Mat> getCameraMatrices() = 0;
78 virtual bool isOpened()
const = 0;
84 virtual void release() = 0;
93 virtual double get(
const int capProperty) = 0;
102 virtual void set(
const int capProperty,
const double value) = 0;
124 void checkFrameIntegrity(cv::Mat& frame);
130 void flipAndRotate(cv::Mat& cvMat)
const;
136 void ifEndedResetOrRelease();
141 void keepDesiredFrameRate();
147 virtual cv::Mat getRawFrame() = 0;
154 virtual std::vector<cv::Mat> getRawFrames() = 0;
159 std::array<double, (int)ProducerProperty::Size> mProperties;
160 unsigned int mNumberEmptyFrames;
163 unsigned long long mFirstFrameTrackingFps;
164 unsigned long long mNumberFramesTrackingFps;
165 unsigned int mNumberSetPositionTrackingFps;
166 std::chrono::high_resolution_clock::time_point mClockTrackingFps;
172 #endif // OPENPOSE_PRODUCER_PRODUCER_HPP
#define DELETE_COPY(className)
Definition: macros.hpp:30
ProducerFpsMode
Definition: enumClasses.hpp:6
ProducerProperty
Definition: enumClasses.hpp:12
Definition: producer.hpp:16
ProducerType getType()
Definition: producer.hpp:68
ProducerType
Definition: enumClasses.hpp:25
#define OP_API
Definition: macros.hpp:15
std::string string
Definition: cl2.hpp:574