MainFlowControl.h 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. #pragma once
  2. #ifndef MAINFLOWCONTROL_H
  3. #define MAINFLOWCONTROL_H
  4. #include <esp_log.h>
  5. #include <string>
  6. #include <esp_http_server.h>
  7. #include "CImageBasis.h"
  8. #include "ClassFlowControll.h"
  9. typedef struct
  10. {
  11. framesize_t ImageFrameSize = FRAMESIZE_VGA; // 0 - 10
  12. gainceiling_t ImageGainceiling; // Image gain (GAINCEILING_x2, x4, x8, x16, x32, x64 or x128)
  13. int ImageQuality; // 0 - 63
  14. int ImageBrightness; // (-2 to 2) - set brightness
  15. int ImageContrast; //-2 - 2
  16. int ImageSaturation; //-2 - 2
  17. int ImageSharpness; //-2 - 2
  18. bool ImageAutoSharpness;
  19. int ImageSpecialEffect; // 0 - 6
  20. int ImageWbMode; // 0 to 4 - if awb_gain enabled (0 - Auto, 1 - Sunny, 2 - Cloudy, 3 - Office, 4 - Home)
  21. int ImageAwb; // white balance enable (0 or 1)
  22. int ImageAwbGain; // Auto White Balance enable (0 or 1)
  23. int ImageAec; // auto exposure off (1 or 0)
  24. int ImageAec2; // automatic exposure sensor (0 or 1)
  25. int ImageAeLevel; // auto exposure levels (-2 to 2)
  26. int ImageAecValue; // set exposure manually (0-1200)
  27. int ImageAgc; // auto gain off (1 or 0)
  28. int ImageAgcGain; // set gain manually (0 - 30)
  29. int ImageBpc; // black pixel correction
  30. int ImageWpc; // white pixel correction
  31. int ImageRawGma; // (1 or 0)
  32. int ImageLenc; // lens correction (1 or 0)
  33. int ImageHmirror; // (0 or 1) flip horizontally
  34. int ImageVflip; // Invert image (0 or 1)
  35. int ImageDcw; // downsize enable (1 or 0)
  36. int ImageWidth;
  37. int ImageHeight;
  38. int ImageLedIntensity;
  39. bool ImageZoomEnabled;
  40. int ImageZoomMode;
  41. int ImageZoomOffsetX;
  42. int ImageZoomOffsetY;
  43. int ImageZoomSize;
  44. int WaitBeforePicture;
  45. bool isImageSize;
  46. bool CameraInitSuccessful;
  47. bool changedCameraSettings;
  48. bool DemoMode;
  49. bool SaveAllFiles;
  50. } camera_flow_config_temp_t;
  51. extern camera_flow_config_temp_t CFstatus;
  52. extern ClassFlowControll flowctrl;
  53. esp_err_t setCCstatusToCFstatus(void); // CCstatus >>> CFstatus
  54. esp_err_t setCFstatusToCCstatus(void); // CFstatus >>> CCstatus
  55. esp_err_t setCFstatusToCam(void); // CFstatus >>> Kamera
  56. void register_server_main_flow_task_uri(httpd_handle_t server);
  57. void CheckIsPlannedReboot(void);
  58. bool getIsPlannedReboot(void);
  59. void InitializeFlowTask(void);
  60. void DeleteMainFlowTask(void);
  61. bool isSetupModusActive(void);
  62. int getCountFlowRounds(void);
  63. #ifdef ENABLE_MQTT
  64. esp_err_t MQTTCtrlFlowStart(std::string _topic);
  65. #endif // ENABLE_MQTT
  66. esp_err_t GetRawJPG(httpd_req_t *req);
  67. esp_err_t GetJPG(std::string _filename, httpd_req_t *req);
  68. #endif // MAINFLOWCONTROL_H