Ring buffer implementation.  
More...
 | 
| static void  | spa_ringbuffer_init (struct spa_ringbuffer *rbuf) | 
|   | Initialize a spa_ringbuffer with size.  More...
  | 
|   | 
| static void  | spa_ringbuffer_set_avail (struct spa_ringbuffer *rbuf, uint32_t size) | 
|   | Sets the pointers so that the ringbuffer contains size bytes.  More...
  | 
|   | 
| static int32_t  | spa_ringbuffer_get_read_index (struct spa_ringbuffer *rbuf, uint32_t *index) | 
|   | Get the read index and available bytes for reading.  More...
  | 
|   | 
| static void  | spa_ringbuffer_read_data (struct spa_ringbuffer *rbuf 1, const void *buffer, uint32_t size, uint32_t offset, void *data, uint32_t len) | 
|   | Read len bytes from rbuf starting offset.  More...
  | 
|   | 
| static void  | spa_ringbuffer_read_update (struct spa_ringbuffer *rbuf, int32_t index) | 
|   | Update the read pointer to index.  More...
  | 
|   | 
| static int32_t  | spa_ringbuffer_get_write_index (struct spa_ringbuffer *rbuf, uint32_t *index) | 
|   | Get the write index and the number of bytes inside the ringbuffer.  More...
  | 
|   | 
| static void  | spa_ringbuffer_write_data (struct spa_ringbuffer *rbuf 1, void *buffer, uint32_t size, uint32_t offset, const void *data, uint32_t len) | 
|   | Write len bytes to buffer starting offset.  More...
  | 
|   | 
| static void  | spa_ringbuffer_write_update (struct spa_ringbuffer *rbuf, int32_t index) | 
|   | Update the write pointer to index.  More...
  | 
|   | 
Ring buffer implementation. 
◆ SPA_RINGBUFFER_INIT
◆ spa_ringbuffer_init()
◆ spa_ringbuffer_set_avail()
  
  
      
        
          | static void spa_ringbuffer_set_avail  | 
          ( | 
          struct spa_ringbuffer *  | 
          rbuf,  | 
         
        
           | 
           | 
          uint32_t  | 
          size  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
inlinestatic   | 
  
 
Sets the pointers so that the ringbuffer contains size bytes. 
- Parameters
 - 
  
  
 
 
 
◆ spa_ringbuffer_get_read_index()
  
  
      
        
          | static int32_t spa_ringbuffer_get_read_index  | 
          ( | 
          struct spa_ringbuffer *  | 
          rbuf,  | 
         
        
           | 
           | 
          uint32_t *  | 
          index  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
inlinestatic   | 
  
 
Get the read index and available bytes for reading. 
- Parameters
 - 
  
    | rbuf | a spa_ringbuffer  | 
    | index | the value of readindex, should be taken modulo the size of the ringbuffer memory to get the offset in the ringbuffer memory  | 
  
   
- Returns
 - number of available bytes to read. values < 0 mean there was an underrun. values > rbuf->size means there was an overrun. 
 
 
 
◆ spa_ringbuffer_read_data()
  
  
      
        
          | static void spa_ringbuffer_read_data  | 
          ( | 
          struct spa_ringbuffer *rbuf  | 
          1,  | 
         
        
           | 
           | 
          const void *  | 
          buffer,  | 
         
        
           | 
           | 
          uint32_t  | 
          size,  | 
         
        
           | 
           | 
          uint32_t  | 
          offset,  | 
         
        
           | 
           | 
          void *  | 
          data,  | 
         
        
           | 
           | 
          uint32_t  | 
          len  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
inlinestatic   | 
  
 
Read len bytes from rbuf starting offset. 
offset must be taken modulo size and len should be smaller than size.
- Parameters
 - 
  
    | rbuf | a struct Ringbuffer  | 
    | buffer | memory to read from  | 
    | size | the size of buffer  | 
    | offset | offset in buffer to read from  | 
    | data | destination memory  | 
    | len | number of bytes to read  | 
  
   
 
 
◆ spa_ringbuffer_read_update()
  
  
      
        
          | static void spa_ringbuffer_read_update  | 
          ( | 
          struct spa_ringbuffer *  | 
          rbuf,  | 
         
        
           | 
           | 
          int32_t  | 
          index  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
inlinestatic   | 
  
 
Update the read pointer to index. 
- Parameters
 - 
  
  
 
 
 
◆ spa_ringbuffer_get_write_index()
  
  
      
        
          | static int32_t spa_ringbuffer_get_write_index  | 
          ( | 
          struct spa_ringbuffer *  | 
          rbuf,  | 
         
        
           | 
           | 
          uint32_t *  | 
          index  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
inlinestatic   | 
  
 
Get the write index and the number of bytes inside the ringbuffer. 
- Parameters
 - 
  
    | rbuf | a spa_ringbuffer  | 
    | index | the value of writeindex, should be taken modulo the size of the ringbuffer memory to get the offset in the ringbuffer memory  | 
  
   
- Returns
 - the fill level of rbuf. values < 0 mean there was an underrun. values > rbuf->size means there was an overrun. Subtract from the buffer size to get the number of bytes available for writing. 
 
 
 
◆ spa_ringbuffer_write_data()
  
  
      
        
          | static void spa_ringbuffer_write_data  | 
          ( | 
          struct spa_ringbuffer *rbuf  | 
          1,  | 
         
        
           | 
           | 
          void *  | 
          buffer,  | 
         
        
           | 
           | 
          uint32_t  | 
          size,  | 
         
        
           | 
           | 
          uint32_t  | 
          offset,  | 
         
        
           | 
           | 
          const void *  | 
          data,  | 
         
        
           | 
           | 
          uint32_t  | 
          len  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
inlinestatic   | 
  
 
Write len bytes to buffer starting offset. 
offset must be taken modulo size and len should be smaller than size.
- Parameters
 - 
  
    | rbuf | a spa_ringbuffer  | 
    | buffer | memory to write to  | 
    | size | the size of buffer  | 
    | offset | offset in buffer to write to  | 
    | data | source memory  | 
    | len | number of bytes to write  | 
  
   
 
 
◆ spa_ringbuffer_write_update()
  
  
      
        
          | static void spa_ringbuffer_write_update  | 
          ( | 
          struct spa_ringbuffer *  | 
          rbuf,  | 
         
        
           | 
           | 
          int32_t  | 
          index  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
inlinestatic   | 
  
 
Update the write pointer to index. 
- Parameters
 -