Files
kedia/main/boards/common/camera.h
2026-06-17 15:02:16 +08:00

25 lines
743 B
C++

#ifndef CAMERA_H
#define CAMERA_H
#include <string>
struct CameraDrowsinessResult {
bool valid = false;
bool eyes_closed = false;
float eye_openness_score = 0.0f;
float baseline_score = 0.0f;
};
class Camera {
public:
virtual void SetExplainUrl(const std::string& url, const std::string& token) = 0;
virtual bool Capture() = 0;
virtual bool SetHMirror(bool enabled) = 0;
virtual bool SetVFlip(bool enabled) = 0;
virtual bool SetSwapBytes(bool enabled) { return false; } // Optional, default no-op
virtual bool DetectDrowsiness(CameraDrowsinessResult& result, bool show_debug_preview = false) { return false; }
virtual std::string Explain(const std::string& question) = 0;
};
#endif // CAMERA_H