mirror of
https://github.com/lostjared/Acid.Cam.v2.Qt.git
synced 2025-12-13 10:20:01 +01:00
40 lines
750 B
C++
Executable File
40 lines
750 B
C++
Executable File
/*
|
|
* Acid Cam v2 - Qt/OpenCV Edition
|
|
* written by Jared Bruni ( http://lostsidedead.com )
|
|
* (C) 2017 GPL
|
|
*/
|
|
|
|
#ifndef _PLUGIN_H
|
|
#define _PLUGIN_H
|
|
|
|
#include "qtheaders.h"
|
|
|
|
|
|
typedef void (*pixel)(int x, int y, unsigned char *buf);
|
|
typedef void (*complete)();
|
|
|
|
class Plugin {
|
|
public:
|
|
Plugin();
|
|
~Plugin();
|
|
bool loadPlugin(const std::string &text);
|
|
void call_Pixel(int x, int y, unsigned char *rgb);
|
|
void call_Complete();
|
|
std::string name() const { return mod_name; }
|
|
private:
|
|
pixel pixel_function;
|
|
complete complete_function;
|
|
QLibrary *library;
|
|
std::string mod_name;
|
|
};
|
|
|
|
class PluginList {
|
|
public:
|
|
PluginList();
|
|
~PluginList();
|
|
std::vector<Plugin*> plugin_list;
|
|
};
|
|
|
|
extern PluginList plugins;
|
|
#endif
|