libcamera
v0.4.0
Supporting cameras in Linux since 2019
|
IPC message pipe for IPA isolation. More...
Public Member Functions | |
IPCPipe () | |
Construct an IPCPipe instance. | |
bool | isConnected () const |
Check if the IPCPipe instance is connected. More... | |
virtual int | sendSync (const IPCMessage &in, IPCMessage *out)=0 |
Send a message over IPC synchronously. More... | |
virtual int | sendAsync (const IPCMessage &data)=0 |
Send a message over IPC asynchronously. More... | |
Public Attributes | |
Signal< const IPCMessage & > | recv |
Signal to be emitted when a message is received over IPC. More... | |
Protected Attributes | |
bool | connected_ |
Flag to indicate if the IPCPipe instance is connected. More... | |
IPC message pipe for IPA isolation.
Virtual class to model an IPC message pipe for use by IPA proxies for IPA isolation. sendSync() and sendAsync() must be implemented, and the recvMessage signal must be emitted whenever new data is available.
|
inline |
|
pure virtual |
Send a message over IPC asynchronously.
[in] | data | Data to send |
This function will return immediately after sending the message.
|
pure virtual |
Send a message over IPC synchronously.
[in] | in | Data to send |
[in] | out | IPCMessage instance in which to receive data, if applicable |
This function will not return until a response is received. The event loop will still continue to execute, however.
|
protected |
Flag to indicate if the IPCPipe instance is connected.
An IPCPipe instance is connected if IPC is successfully set up.
This flag can be read via IPCPipe::isConnected().
Implementations of the IPCPipe class should set this flag upon successful connection.
libcamera::IPCPipe::recv |
Signal to be emitted when a message is received over IPC.
When a message is received over IPC, this signal shall be emitted. Users must connect to this to receive messages.