PebbleOS
Loading...
Searching...
No Matches
Data Structures | Functions

Per-session queue of outbound jobs, each holding complete messages. More...

Data Structures

struct  SessionSendJobImpl
 Callbacks implementing a send queue job. More...
 
struct  SessionSendQueueJob
 Job sending one or more complete Pebble Protocol messages. More...
 

Functions

void comm_session_send_queue_add_job (CommSession *session, SessionSendQueueJob **job)
 Append a job to a session's send queue and schedule sending.
 

Detailed Description

Per-session queue of outbound jobs, each holding complete messages.


Data Structure Documentation

◆ SessionSendQueueJob

struct SessionSendQueueJob

Job sending one or more complete Pebble Protocol messages.

Send queue job, see struct SessionSendQueueJob.

Embed it as the first member of a larger structure to carry job-specific context.

Data Fields
const SessionSendJobImpl * impl Job implementation.
ListNode node Node in the session's send queue.

Function Documentation

◆ comm_session_send_queue_add_job()

void comm_session_send_queue_add_job ( CommSession *  session,
SessionSendQueueJob **  job 
)

Append a job to a session's send queue and schedule sending.

The caller keeps the job alive until impl->free() is called. If the session is no longer valid, the job is freed immediately and *job is set to NULL. bt_lock() need not be held.

Parameters
sessionDestination session.
[in,out]jobJob to enqueue.