/* SPDX-License-Identifier: LGPL-2.1-or-later */ /* * Copyright (C) 2019, Collabora Ltd. * Author: Nicolas Dufresne * * gstlibcamerasrc.h - GStreamer Capture Element */ #pragma once #include #include G_BEGIN_DECLS #define GST_TYPE_LIBCAMERA_SRC gst_libcamera_src_get_type() G_DECLARE_FINAL_TYPE(GstLibcameraSrc, gst_libcamera_src, GST_LIBCAMERA, SRC, GstElement) G_END_DECLS inline GType gst_libcamera_auto_focus_get_type() { static GType type = 0; static const GEnumValue values[] = { { static_cast(libcamera::controls::AfModeManual), "AfModeManual", "manual-focus", }, { static_cast(libcamera::controls::AfModeAuto), "AfModeAuto", "automatic-auto-focus", }, { static_cast(libcamera::controls::AfModeContinuous), "AfModeContinuous", "continuous-auto-focus", }, { 0, NULL, NULL } }; if (!type) type = g_enum_register_static("GstLibcameraAutoFocus", values); return type; }