void CompressionThread::mainLoop() { if(compressMode_) { if(!uncompressedData_.empty()) { if(image_) { compressedData_ = compressImage2(uncompressedData_, format_); } else { compressedData_ = compressData2(uncompressedData_); } } } else // uncompress { if(!compressedData_.empty()) { if(image_) { uncompressedData_ = uncompressImage(compressedData_); } else { uncompressedData_ = uncompressData(compressedData_); } } } this->kill(); }
void Link::setUserData(const cv::Mat & userData) { if(!userData.empty() && (!_userDataCompressed.empty() || !_userDataRaw.empty())) { UWARN("Writing new user data over existing user data. This may result in data loss."); } _userDataRaw = cv::Mat(); _userDataCompressed = cv::Mat(); if(!userData.empty()) { if(userData.type() == CV_8UC1) // Bytes { _userDataCompressed = userData; // assume compressed } else { _userDataRaw = userData; _userDataCompressed = compressData2(userData); } } }