libcamera
v0.3.1+12-19bbca3c
Supporting cameras in Linux since 2019
|
A message carrying a method invocation across threads. More...
Public Member Functions | |
InvokeMessage (BoundMethodBase *method, std::shared_ptr< BoundMethodPackBase > pack, Semaphore *semaphore=nullptr, bool deleteMethod=false) | |
Construct an InvokeMessage for method invocation on an Object. More... | |
Semaphore * | semaphore () const |
Retrieve the message semaphore passed to the constructor. More... | |
void | invoke () |
Invoke the method bound to InvokeMessage::method_ with arguments InvokeMessage::pack_. | |
Public Member Functions inherited from libcamera::Message | |
Message (Type type) | |
Construct a message object of type type. More... | |
Type | type () const |
Retrieve the message type. More... | |
Object * | receiver () const |
Retrieve the message receiver. More... | |
Additional Inherited Members | |
Public Types inherited from libcamera::Message | |
enum | Type { None = 0, InvokeMessage = 1, ThreadMoveMessage = 2, DeferredDelete = 3, UserMessage = 1000 } |
The message type. More... | |
Static Public Member Functions inherited from libcamera::Message | |
static Type | registerMessageType () |
Reserve and register a custom user-defined message type. More... | |
A message carrying a method invocation across threads.
libcamera::InvokeMessage::InvokeMessage | ( | BoundMethodBase * | method, |
std::shared_ptr< BoundMethodPackBase > | pack, | ||
Semaphore * | semaphore = nullptr , |
||
bool | deleteMethod = false |
||
) |
Construct an InvokeMessage for method invocation on an Object.
[in] | method | The bound method |
[in] | pack | The packed method arguments |
[in] | semaphore | The semaphore used to signal message delivery |
[in] | deleteMethod | True to delete the method when the message is destroyed |
|
inline |
Retrieve the message semaphore passed to the constructor.