libcamera  v0.0.0
Supporting cameras in Linux since 2019
Enumerations
bound_method.h File Reference

Method bind and invocation. More...

#include <memory>
#include <tuple>
#include <type_traits>
#include <utility>

Go to the source code of this file.

Enumerations

enum  libcamera::ConnectionType { libcamera::ConnectionTypeAuto , libcamera::ConnectionTypeDirect , libcamera::ConnectionTypeQueued , libcamera::ConnectionTypeBlocking }
 Connection type for asynchronous communication. More...
 

Detailed Description

Method bind and invocation.

Enumeration Type Documentation

◆ ConnectionType

Connection type for asynchronous communication.

This enumeration describes the possible types of asynchronous communication between a sender and a receiver. It applies to Signal::emit() and Object::invokeMethod().

Enumerator
ConnectionTypeAuto 

If the sender and the receiver live in the same thread, ConnectionTypeDirect is used. Otherwise ConnectionTypeQueued is used.

ConnectionTypeDirect 

The receiver is invoked immediately and synchronously in the sender's thread.

ConnectionTypeQueued 

The receiver is invoked asynchronously.

Invoke the receiver asynchronously in its thread when control returns to the thread's event loop. The sender proceeds without waiting for the invocation to complete.

ConnectionTypeBlocking 

The receiver is invoked synchronously.

If the sender and the receiver live in the same thread, this is equivalent to ConnectionTypeDirect. Otherwise, the receiver is invoked asynchronously in its thread when control returns to the thread's event loop. The sender blocks until the receiver signals the completion of the invocation.