duvc-ctl 2.0.0
USB Video Class Camera Control Library
Loading...
Searching...
No Matches
interface.h
Go to the documentation of this file.
1#pragma once
2
10#include <memory>
11#include <vector>
12
13namespace duvc {
14
19public:
20 virtual ~IPlatformInterface() = default;
21
27
33 virtual Result<bool> is_device_connected(const Device &device) = 0;
34
41 create_connection(const Device &device) = 0;
42};
43
103
108std::unique_ptr<IPlatformInterface> create_platform_interface();
109
110} // namespace duvc
Abstract interface for device-specific operations.
Definition interface.h:47
virtual Result< void > set_video_property(VidProp prop, const PropSetting &setting)=0
Set video property value.
virtual ~IDeviceConnection()=default
virtual bool is_valid() const =0
Check if connection is valid.
virtual Result< PropRange > get_camera_property_range(CamProp prop)=0
Get camera property range.
virtual Result< PropSetting > get_video_property(VidProp prop)=0
Get video property value.
virtual Result< void > set_camera_property(CamProp prop, const PropSetting &setting)=0
Set camera property value.
virtual Result< PropRange > get_video_property_range(VidProp prop)=0
Get video property range.
virtual Result< PropSetting > get_camera_property(CamProp prop)=0
Get camera property value.
Abstract interface for platform-specific camera operations.
Definition interface.h:18
virtual Result< std::vector< Device > > list_devices()=0
Enumerate available devices.
virtual Result< std::unique_ptr< class IDeviceConnection > > create_connection(const Device &device)=0
Create device connection.
virtual Result< bool > is_device_connected(const Device &device)=0
Check if device is connected.
virtual ~IPlatformInterface()=default
Result type that can contain either a value or an error.
Definition result.h:75
Definition core.h:13
VidProp
Video processing properties (IAMVideoProcAmp interface)
Definition types.h:50
std::unique_ptr< IPlatformInterface > create_platform_interface()
Get platform-specific interface implementation.
Definition factory.cpp:60
CamProp
Camera control properties (IAMCameraControl interface)
Definition types.h:18
Result/Error type system for duvc-ctl.
Represents a camera device.
Definition types.h:131
Property setting with value and control mode.
Definition types.h:74
Core data types and enumerations for duvc-ctl.