11#include <duvc-ctl/detail/com_helpers.h>
23class DeviceConnection {
93 bool is_valid()
const {
return filter_ !=
nullptr; }
97 std::unique_ptr<duvc::detail::com_apartment> com_;
RAII wrapper for DirectShow device connections.
bool is_valid() const
Check if connection is valid.
DeviceConnection & operator=(const DeviceConnection &)=delete
DeviceConnection(const DeviceConnection &)=delete
bool get_range(VidProp prop, PropRange &range)
Get valid range for a video processing property.
DeviceConnection(const Device &dev)
Create connection to specified device.
DeviceConnection & operator=(DeviceConnection &&)=default
~DeviceConnection()
Destructor - releases all COM interfaces.
bool set(VidProp prop, const PropSetting &val)
Set value of a video processing property.
bool get(CamProp prop, PropSetting &val)
Get current value of a camera control property.
bool set(CamProp prop, const PropSetting &val)
Set value of a camera control property.
bool get_range(CamProp prop, PropRange &range)
Get valid range for a camera control property.
bool get(VidProp prop, PropSetting &val)
Get current value of a video processing property.
DeviceConnection(DeviceConnection &&)=default
Result type that can contain either a value or an error.
VidProp
Video processing properties (IAMVideoProcAmp interface)
CamProp
Camera control properties (IAMCameraControl interface)
Represents a camera device.
Property range and default information.
Property setting with value and control mode.
Core data types and enumerations for duvc-ctl.