123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172 |
- //
- // Created by zx on 23-11-28.
- //
- #include "transitData.h"
- TransitData::TransitData() {
- }
- void TransitData::setImage(cv::Mat image, int id) {
- if (id < 0 || id >= NUM_) return;
- mutex_.lock();
- image_[id] = image.clone();
- mutex_.unlock();
- }
- void TransitData::setImageCL(cv::Mat &image, int id) {
- if (id < 0 || id >= NUM_) return;
- mutex_.lock();
- imageCL_[id] = image.clone();
- mutex_.unlock();
- }
- void TransitData::setMask(std::vector<cv::Point> mask, int id) {
- if (id < 0 || id >= NUM_) return;
- mutex_.lock();
- mask_[id] = mask;
- mutex_.unlock();
- }
- void TransitData::setMeasureInfo(MeasureInfo info) {
- mutex_.lock();
- measureInfo_ = info;
- mutex_.unlock();
- }
- bool TransitData::getImage(cv::Mat &image, int id, float timeout) {
- if (id < 0 || id >= NUM_) return false;
- if (image_[id].timeout(timeout))
- return false;
- mutex_.lock();
- image = image_[id]();
- mutex_.unlock();
- return true;
- }
- bool TransitData::getImageCL(cv::Mat &image, int id, float timeout) {
- if (id < 0 || id >= NUM_) return false;
- if (imageCL_[id].timeout(timeout))
- return false;
- mutex_.lock();
- image = imageCL_[id]().clone();
- mutex_.unlock();
- return true;
- }
- bool TransitData::getMask(std::vector<cv::Point> &mask, int id, float timeout) {
- if (id < 0 || id >= NUM_) return false;
- if (mask_[id].timeout(timeout))
- return false;
- mask = mask_[id]();
- return true;
- }
- bool TransitData::getMeasureInfo(MeasureInfo &info, float timeout) {
- if (measureInfo_.timeout(timeout))
- return false;
- mutex_.lock();
- info = measureInfo_();
- mutex_.unlock();
- return true;
- }
|