Signapse
All Classes Files Functions Variables Macros
Camera.cpp
Go to the documentation of this file.
1#include "Camera.h"
2
6Camera::Camera() : cameraSettings() {
7 isOn=true;
8}
12Camera::Camera(CameraSettings settings) : cameraSettings(settings){
13 isOn = true;
14}
15
20void Camera::setOn(bool state){
21 isOn = state;
22}
23
27void Camera::threadLoop(){
28 while(isOn){
29 postFrame();
30 }
31}
32
36void Camera::postFrame(){
37 if(!sceneCallback) return;
38 cv::Mat cap;
39 videoCapture.read(cap);
40 // check if we succeeded
41 if (cap.empty()) {
42 std::cerr << "ERROR! blank frame grabbed\n";
43 return;
44 }
45 Scene s;
46 s.frame=cap;
48}
49
54 videoCapture.open(cameraSettings.deviceID, cameraSettings.apiID);
55 cameraThread = std::thread(&Camera::threadLoop, this);
56}
57
62 isOn=false;
63 cameraThread.join();
64
65}
66
72 return isOn;
73}
Camera()
Definition: Camera.cpp:6
bool getOn()
Definition: Camera.cpp:71
void Start()
Definition: Camera.cpp:53
void Stop()
Definition: Camera.cpp:61
void setOn(bool state)
Definition: Camera.cpp:20
virtual void NextScene(Scene next)=0
int apiID
Member variable containing web cam API ID.
Struct Scene.
Definition: Scene.h:36
cv::Mat frame
Member variable.
Definition: Scene.h:42