camera_suite_view_wifi_camera.h 1.2 KB

1234567891011121314151617181920212223242526272829303132333435
  1. #pragma once
  2. #include <furi_hal.h>
  3. #include <furi_hal_serial.h>
  4. #include <furi_hal_serial_control.h>
  5. #include "../helpers/camera_suite_haptic.h"
  6. #include "../helpers/camera_suite_led.h"
  7. #include "../helpers/camera_suite_speaker.h"
  8. #include "../helpers/camera_suite_custom_event.h"
  9. typedef void (*CameraSuiteViewWiFiCameraCallback)(CameraSuiteCustomEvent event, void* context);
  10. typedef struct CameraSuiteViewWiFiCamera {
  11. View* view;
  12. CameraSuiteViewCameraCallback callback;
  13. void* context;
  14. FuriHalSerialHandle* wifi_serial_handle;
  15. FuriStreamBuffer* wifi_rx_stream;
  16. FuriThread* wifi_worker_thread;
  17. } CameraSuiteViewWiFiCamera;
  18. typedef struct {
  19. FuriString* log;
  20. size_t log_strlen;
  21. } CameraSuiteViewWiFiCameraModel;
  22. // Function Prototypes
  23. CameraSuiteViewWiFiCamera* camera_suite_view_wifi_camera_alloc();
  24. void camera_suite_view_wifi_camera_free(CameraSuiteViewWiFiCamera* wifi_view_instance);
  25. View* camera_suite_view_wifi_camera_get_view(CameraSuiteViewWiFiCamera* wifi_view_instance);
  26. void camera_suite_view_wifi_camera_set_callback(
  27. CameraSuiteViewWiFiCamera* wifi_view_instance,
  28. CameraSuiteViewWiFiCameraCallback callback,
  29. void* context);