#include "ProMemory.h" ProMemory::ProMemory() { } ProMemory::~ProMemory() { } void ProMemory::pushCasicIris(CasicIrisInfo irisInfo) { QMutex mutex; mutex.lock(); if (this->irisQueue.size() > 30) { QStack<CasicIrisInfo> empty; std::swap(empty, irisQueue); } irisQueue.push(irisInfo); mutex.unlock(); } CasicIrisInfo ProMemory::popCasicIris() { CasicIrisInfo result; QMutex mutex; mutex.lock(); if (this->irisQueue.size() > 0) { result = irisQueue.pop(); } mutex.unlock(); return result; } int ProMemory::getIrisQueueSize() { int size = 0; QMutex mutex; mutex.lock(); size = this->irisQueue.size(); mutex.unlock(); return size; } bool ProMemory::isIrisQueueEmpty() { bool empty = true; QMutex mutex; mutex.lock(); empty = this->irisQueue.isEmpty(); mutex.unlock(); return empty; } void ProMemory::clearIrisQueue() { QMutex mutex; mutex.lock(); QStack<CasicIrisInfo> empty; std::swap(empty, irisQueue); mutex.unlock(); } void ProMemory::initIrisFeatures(QString personId) { // irisRegistPro->sendDataToExract(QByteArray(QString("[-u]").append(personId).toLocal8Bit())); }