aboutsummaryrefslogtreecommitdiff
path: root/hsm-cam/FFI/Cam.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'hsm-cam/FFI/Cam.hpp')
-rw-r--r--hsm-cam/FFI/Cam.hpp22
1 files changed, 17 insertions, 5 deletions
diff --git a/hsm-cam/FFI/Cam.hpp b/hsm-cam/FFI/Cam.hpp
index c2cd4ed..eeea814 100644
--- a/hsm-cam/FFI/Cam.hpp
+++ b/hsm-cam/FFI/Cam.hpp
@@ -1,6 +1,9 @@
#ifndef CAM_HPP
#define CAM_HPP
+#define FRAME_WIDTH (800)
+#define FRAME_HEIGHT (600)
+
enum Severity
{
Attention = 0,
@@ -9,17 +12,26 @@ enum Severity
};
typedef void (*HsLogger)(enum Severity, const char *);
-typedef void (*HsCallback)(int fd);
+typedef void (*HsRequestCallback)();
#ifdef __cplusplus
extern "C"
{
#endif
void register_logger(HsLogger hs_logger);
- void register_callback(HsCallback hs_callback);
- void initialize_ffi();
- void shutdown_ffi();
- void request_capture();
+ void register_request_callback(HsRequestCallback hs_request_callback);
+ void start_camera_manager();
+ void stop_camera_manager();
+ void acquire_camera();
+ void release_camera();
+ void allocate_frame_buffer();
+ void free_frame_buffer();
+ void start_camera();
+ void stop_camera();
+ void create_request();
+
+ int get_dma_buffer_fd();
+ void request_frame();
#ifdef __cplusplus
}
#endif