PylonRecorder/grabber.cpp

26 lines
792 B
C++

#include "grabber.h"
#include <iostream>
#include <pylon/PylonIncludes.h>
void Grabber::run() {
stop_request = false;
int count = 0;
if (camera->isOpen()) {
camera->frameRate(static_cast<uint>(framerate));
camera->exposureTime(exposure);
camera->gain(gain);
ImageSettings settings = camera->getImageSettings();
Pylon::CInstantCamera *cam = camera->getCamera();
Pylon::CGrabResultPtr frame;
cam->StartGrabbing();
while (camera->isOpen() && !stop_request) {
MyImage *img = new MyImage(settings.width, settings.height);
cam->RetrieveResult( 5000, frame, Pylon::TimeoutHandling_ThrowException);
img->setFrame(frame);
buffer->push(img);
count += 1;
}
cam->StopGrabbing();
}
}