cellUview 1.0.0
A real-time image processing and analysis suite for digital microscopy.
Loading...
Searching...
No Matches
imageProcessor.h
1#ifndef CELLUVIEW_IMAGEPROCESSOR_H
2#define CELLUVIEW_IMAGEPROCESSOR_H
3#include <opencv2/core.hpp>
4#include <opencv2/videoio.hpp>
5#include "frame.h"
6
7#include <iostream>
8#include <stdlib.h>
9#include <thread>
10
11//abstract class
16public:
17 imageProcessor() = default;
18
19 virtual void receiveFrame(frame newFrame) = 0;
20
21 virtual void updateSettings(std::map<std::string, std::string>) = 0;
22
23 virtual std::string getParamLabel() = 0;
24
25 void registerCallback(imageProcessor* cb){
26 frameCb = cb;
27 }
28
29 bool toggleEnable(){
30 enabled = !enabled;
31 return enabled;
32 }
33
34 bool getEnabled(){
35 return enabled;
36 }
37
38
39protected:
40 imageProcessor* frameCb = nullptr;
41 bool enabled = false;
42
43
44};
45
46#endif
Definition: frame.h:20
Definition: imageProcessor.h:15