|
hal
Hardware Abstraction Layer
|
A queue that holds references to the transactions to be processed. More...

Public Attributes | |
| hal_i2c_txn_t * | transactions [I2C_TRANSACTION_QUEUE_SIZE] |
| size_t | head |
| size_t | tail |
| size_t | transaction_count |
A queue that holds references to the transactions to be processed.
Implemented as a ring buffer with no data overwrite.
| size_t i2c_transaction_queue_t::head |
head points to either an empty slot (space in queue) or to tail (no space in queue).
| size_t i2c_transaction_queue_t::tail |
tail points to the next message to be dequeued.
| size_t i2c_transaction_queue_t::transaction_count |
A current count of the number of transactions in the queue.
| hal_i2c_txn_t* i2c_transaction_queue_t::transactions[I2C_TRANSACTION_QUEUE_SIZE] |
Array that holds all the references to transactions.