24 #include "CameraRevision.h" 28 class CloudVisualizer;
136 #ifndef DOXYGEN_SHOULD_SKIP_THIS 137 ZIVID_API
explicit Camera(
class CameraImpl && other);
153 ZIVID_API std::string
toString()
const;
162 std::shared_ptr<class CameraImpl> m_impl;
166 ZIVID_API std::ostream &
operator<<(std::ostream &stream,
const Camera &camera);
187 : m_settings{ std::move(other.m_settings) }
188 , m_camera{ other.m_camera }
190 other.m_apply =
false;
198 m_camera.setSettings(std::move(m_settings));
203 template<
typename Setting>
206 m_settings.
set(value.path, value.toString());
211 template<
typename Setting>
215 return std::move(setter);
219 bool m_apply{
true };
229 template<
typename Setting>
Settings for a Zivid camera
SettingsBatch(SettingsBatch &&other) noexcept
Move constructor
Definition: Camera.h:186
ZIVID_API Camera()
Constructor
ZIVID_API CameraState state() const
Get the current camera state
SettingsBatch(Camera &camera)
Construct a SettingsBatch helper class on a camera
Definition: Camera.h:176
ZIVID_API void setFrameCallback(FrameCallback callback)
Set a callback that is executed every time a new frame is ready
ZIVID_API DeviceCloud allocateDeviceCloud()
Allocate a new point cloud on the Compute device
ZIVID_API void stopLive()
Stop live (continuous) capturing of frames
ZIVID_API void disconnect()
Disconnect from the camera and free all resources associated with it
Point cloud on the Compute device
Camera revision
Definition: CameraRevision.h:19
ZIVID_API bool operator!=(const Camera &other) const
check if two camera instances represent the different devices
ZIVID_API std::string modelName() const
Get the model name
ZIVID_API Camera & operator=(const Camera &other) noexcept
Copy assignment
SettingsBatch & set(Setting value)
Cache the setting until object destruction
Definition: Camera.h:204
ZIVID_API bool operator==(const Camera &other) const
check if two camera instances represent the same device
ZIVID_API CameraRevision revision() const
Get the camera revision
ZIVID_API Frame capture()
Capture a single frame
ZIVID_API void setComputeDevice(ComputeDevice device)
Connect the camera to a given Compute device
ZIVID_API Camera & connect()
Connect to the camera
Helper class to a apply a batch of settings changes to a camera
Definition: Camera.h:171
Definition: Application.h:19
Definitions for export of DLL interfaces
A frame captured by a Zivid camera
Definition: Frame.h:36
Point cloud on the Compute device.
Definition: DeviceCloud.h:31
std::function< void(Frame)> FrameCallback
Callback for frames
Definition: Camera.h:42
ZIVID_API std::string firmwareVersion() const
Get the camera's firmware version
A frame captured by a Zivid camera
ZIVID_API SerialNumber serialNumber() const
Get the serial number of the Zivid camera
ZIVID_API ~Camera()
Destructor
std::function< void(CameraState)> StateCallback
Callback for state
Definition: Camera.h:45
ZIVID_API void setSettings(Settings settings)
Update the camera settings
ZIVID_API Settings settings() const
Get the current camera settings
A Compute device on which to allocate a device point cloud
Settings for a Zivid camera
Definition: Settings.h:50
A Compute device on which to allocate a device point cloud.
Definition: ComputeDevice.h:28
~SettingsBatch()
Apply all cached settings to the camera
Definition: Camera.h:194
ZIVID_API ComputeDevice computeDevice()
Get Compute device
Serial number of a Zivid camera
Serial number of a Zivid camera
Definition: SerialNumber.h:24
ZIVID_API std::string toString() const
Get string representation of the camera info
ZIVID_API void startLive()
Start live (continuous) capturing of frames
Information about camera connection state, live mode, temperatures, etc.
Definition: CameraState.h:38
ZIVID_API std::ostream & operator<<(std::ostream &stream, const Camera &camera)
Serialize the value to a stream
Interface to one Zivid camera
Definition: Camera.h:38