7#ifndef __LIBCAMERA_INTERNAL_IPA_IPC_H__
8#define __LIBCAMERA_INTERNAL_IPA_IPC_H__
36 std::vector<uint8_t> &
data() {
return data_; }
37 std::vector<FileDescriptor> &
fds() {
return fds_; }
40 const std::vector<uint8_t> &
data()
const {
return data_; }
41 const std::vector<FileDescriptor> &
fds()
const {
return fds_; }
46 std::vector<uint8_t> data_;
47 std::vector<FileDescriptor> fds_;
IPC message to be passed through IPC message pipe.
Definition: ipc_pipe.h:21
const std::vector< uint8_t > & data() const
Returns a const reference to the byte vector containing data.
Definition: ipc_pipe.h:40
std::vector< FileDescriptor > & fds()
Returns a reference to the vector containing file descriptors.
Definition: ipc_pipe.h:37
const Header & header() const
Returns a const reference to the header.
Definition: ipc_pipe.h:39
IPCMessage()
Construct an empty IPCMessage instance.
Definition: ipc_pipe.cpp:51
IPCUnixSocket::Payload payload() const
Create an IPCUnixSocket payload from the IPCMessage.
Definition: ipc_pipe.cpp:100
const std::vector< FileDescriptor > & fds() const
Returns a const reference to the vector containing file descriptors.
Definition: ipc_pipe.h:41
Header & header()
Returns a reference to the header.
Definition: ipc_pipe.h:35
std::vector< uint8_t > & data()
Returns a reference to the byte vector containing data.
Definition: ipc_pipe.h:36
IPC message pipe for IPA isolation.
Definition: ipc_pipe.h:51
IPCPipe()
Construct an IPCPipe instance.
Definition: ipc_pipe.cpp:163
virtual int sendAsync(const IPCMessage &data)=0
Send a message over IPC asynchronously.
virtual int sendSync(const IPCMessage &in, IPCMessage *out)=0
Send a message over IPC synchronously.
Signal< const IPCMessage & > recv
Signal to be emitted when a message is received over IPC.
Definition: ipc_pipe.h:63
bool isConnected() const
Check if the IPCPipe instance is connected.
Definition: ipc_pipe.h:56
bool connected_
Flag to indicate if the IPCPipe instance is connected.
Definition: ipc_pipe.h:66
Generic signal and slot communication mechanism.
Definition: signal.h:39
IPC mechanism based on Unix sockets.
Top-level libcamera namespace.
Definition: bound_method.h:15
Signal & slot implementation.
Container for an IPC payload.
Definition: ipc_unixsocket.h:24