libcamera: Thread Safety

libcamera v0.5.1 Supporting cameras in Linux since 2019

Loading...
Searching...
No Matches
Thread Safety

Member libcamera::Camera::acquire ()
  This function is thread-safe. It may only be called when the camera is in the Available state as defined in Operating the Camera.
Member libcamera::Camera::configure (CameraConfiguration *config)
  This function may only be called when the camera is in the Acquired or Configured state as defined in Operating the Camera, and shall be synchronized by the caller with other functions that affect the camera state.
Member libcamera::Camera::controls () const
  This function is thread-safe.
Member libcamera::Camera::createRequest (uint64_t cookie=0)
  This function is thread-safe. It may only be called when the camera is in the Configured or Running state as defined in Operating the Camera.
Member libcamera::Camera::generateConfiguration (Span< const StreamRole > roles={})
  This function is thread-safe.
Member libcamera::Camera::id () const
  This function is thread-safe.
Member libcamera::Camera::queueRequest (Request *request)
  This function is thread-safe. It may only be called when the camera is in the Running state as defined in Operating the Camera.
Member libcamera::Camera::release ()
  This function may only be called when the camera is in the Available or Configured state as defined in Operating the Camera, and shall be synchronized by the caller with other functions that affect the camera state.
Member libcamera::Camera::start (const ControlList *controls=nullptr)
  This function may only be called when the camera is in the Configured state as defined in Operating the Camera, and shall be synchronized by the caller with other functions that affect the camera state.
Member libcamera::Camera::stop ()
  This function may be called in any camera state as defined in Operating the Camera, and shall be synchronized by the caller with other functions that affect the camera state. If called when the camera isn't running, it is a no-op.
Member libcamera::Camera::streams () const
  This function is thread-safe.
Member libcamera::CameraManager::cameras () const
  This function is thread-safe.
Member libcamera::CameraManager::get (std::string_view id)
  This function is thread-safe.
Member libcamera::CameraManager::version ()
  This function is threadsafe.
Member libcamera::DeviceEnumerator::enumerate ()=0
  This function is thread-bound.
Member libcamera::EventNotifier::setEnabled (bool enable)
  This function is thread-bound.
Class libcamera::IPCUnixSocket
  This class is thread-bound.
Member libcamera::Object::deleteLater ()
  This function is thread-safe.
Member libcamera::Object::invokeMethod (R(T::*func)(FuncArgs...), ConnectionType type, Args &&... args)
  This function is thread-safe.
Member libcamera::Object::moveToThread (Thread *thread)
  This function is thread-bound.
Member libcamera::Object::postMessage (std::unique_ptr< Message > msg)
  This function is thread-safe.
Member libcamera::Object::thread () const
  This function is thread-safe.
Member libcamera::PipelineHandler::acquire (Camera *camera)
  This function is called from the CameraManager thread.
Member libcamera::PipelineHandler::acquireDevice (Camera *camera)
  This function is called from the CameraManager thread.
Member libcamera::PipelineHandler::acquireMediaDevice (DeviceEnumerator *enumerator, const DeviceMatch &dm)
  This function shall be called from the CameraManager thread.
Member libcamera::PipelineHandler::cameraManager () const
  This function is thread-safe.
Member libcamera::PipelineHandler::completeBuffer (Request *request, FrameBuffer *buffer)
  This function shall be called from the CameraManager thread.
Member libcamera::PipelineHandler::completeRequest (Request *request)
  This function shall be called from the CameraManager thread.
Member libcamera::PipelineHandler::configure (Camera *camera, CameraConfiguration *config)=0
  This function is called from the CameraManager thread.
Member libcamera::PipelineHandler::exportFrameBuffers (Camera *camera, Stream *stream, std::vector< std::unique_ptr< FrameBuffer > > *buffers)=0
  This function is called from the CameraManager thread.
Member libcamera::PipelineHandler::generateConfiguration (Camera *camera, Span< const StreamRole > roles)=0
  This function may be called from any thread and shall be thread-safe. It shall not modify the state of the camera in the pipeline handler.
Member libcamera::PipelineHandler::match (DeviceEnumerator *enumerator)=0
  This function is called from the CameraManager thread.
Member libcamera::PipelineHandler::name () const
  This function shall be thread-safe.
Member libcamera::PipelineHandler::queueRequest (Request *request)
  This function is called from the CameraManager thread.
Member libcamera::PipelineHandler::queueRequestDevice (Camera *camera, Request *request)=0
  This function is called from the CameraManager thread.
Member libcamera::PipelineHandler::registerCamera (std::shared_ptr< Camera > camera)
  This function shall be called from the CameraManager thread.
Member libcamera::PipelineHandler::release (Camera *camera)
  This function is called from the CameraManager thread.
Member libcamera::PipelineHandler::releaseDevice (Camera *camera)
  This function is called from the CameraManager thread.
Member libcamera::PipelineHandler::start (Camera *camera, const ControlList *controls)=0
  This function is called from the CameraManager thread.
Member libcamera::PipelineHandler::stop (Camera *camera)
  This function is called from the CameraManager thread.
Member libcamera::Signal< Args >::connect (T *obj, R(T::*func)(Args...))
  This function is thread-safe.
Member libcamera::Signal< Args >::connect (T *obj, Func func)
  This function is thread-safe.
Member libcamera::Signal< Args >::connect (R(*func)(Args...))
  This function is thread-safe.
Member libcamera::Signal< Args >::disconnect ()
  This function is thread-safe.
Member libcamera::Signal< Args >::disconnect (T *obj)
  This function is thread-safe.
Member libcamera::Signal< Args >::disconnect (T *obj, R(T::*func)(Args...))
  This function is thread-safe.
Member libcamera::Signal< Args >::disconnect (R(*func)(Args...))
  This function is thread-safe.
Member libcamera::Thread::current ()
  This function is thread-safe.
Member libcamera::Thread::currentId ()
  This function is thread-safe.
Member libcamera::Thread::eventDispatcher ()
  This function is thread-safe.
Member libcamera::Thread::exit (int code=0)
  This function is thread-safe.
Member libcamera::Thread::isRunning ()
  This function is thread-safe.
Member libcamera::Thread::wait (utils::duration duration=utils::duration::max())
  This function is thread-safe.
Member libcamera::Timer::start (std::chrono::milliseconds duration)
  This function is thread-bound.
Member libcamera::Timer::start (std::chrono::steady_clock::time_point deadline)
  This function is thread-bound.
Member libcamera::Timer::stop ()
  This function is thread-bound.
Class libcamera::V4L2VideoDevice
  This class is thread-bound.