Lines Matching defs:bq
105 static void drop_block(pa_memblockq *bq, struct list_item *q)
107 pa_assert(bq);
110 pa_assert(bq->n_blocks >= 1);
115 pa_assert(bq->blocks == q);
116 bq->blocks = q->next;
122 pa_assert(bq->blocks_tail == q);
123 bq->blocks_tail = q->prev;
126 if (bq->current_write == q) {
127 bq->current_write = q->prev;
130 if (bq->current_read == q) {
131 bq->current_read = q->next;
140 bq->n_blocks--;
143 static void drop_backlog(pa_memblockq *bq)
146 pa_assert(bq);
148 boundary = bq->read_index - (int64_t) bq->maxrewind;
150 while (bq->blocks && (bq->blocks->index + (int64_t) bq->blocks->chunk.length <= boundary)) {
151 drop_block(bq, bq->blocks);
155 void pa_memblockq_free(pa_memblockq*bq);
158 int pa_memblockq_push(pa_memblockq* bq, const pa_memchunk *chunk);
163 int pa_memblockq_push_align(pa_memblockq* bq, const pa_memchunk *chunk);
166 void pa_memblockq_seek(pa_memblockq *bq, int64_t offset, pa_seek_mode_t seek, bool account);
174 int pa_memblockq_peek(pa_memblockq* bq, pa_memchunk *chunk);
179 int pa_memblockq_peek_fixed_size(pa_memblockq *bq, size_t block_size, pa_memchunk *chunk);
182 void pa_memblockq_drop(pa_memblockq *bq, size_t length);
185 void pa_memblockq_rewind(pa_memblockq *bq, size_t length);
188 bool pa_memblockq_is_readable(pa_memblockq *bq);
191 size_t pa_memblockq_get_length(pa_memblockq *bq);
195 size_t pa_memblockq_pop_missing(pa_memblockq *bq);
197 /* Directly moves the data from the source memblockq into bq */
198 int pa_memblockq_splice(pa_memblockq *bq, pa_memblockq *source);
201 void pa_memblockq_flush_write(pa_memblockq *bq, bool account);
204 void pa_memblockq_flush_read(pa_memblockq *bq);
207 void pa_memblockq_prebuf_disable(pa_memblockq *bq);
210 void pa_memblockq_prebuf_force(pa_memblockq *bq);
213 size_t pa_memblockq_get_maxlength(pa_memblockq *bq);
216 size_t pa_memblockq_get_tlength(pa_memblockq *bq);
219 size_t pa_memblockq_get_prebuf(pa_memblockq *bq);
222 size_t pa_memblockq_get_minreq(pa_memblockq *bq);
225 size_t pa_memblockq_get_maxrewind(pa_memblockq *bq);
228 size_t pa_memblockq_get_base(pa_memblockq *bq);
231 int64_t pa_memblockq_get_read_index(pa_memblockq *bq);
234 int64_t pa_memblockq_get_write_index(pa_memblockq *bq);
246 void pa_memblockq_get_attr(pa_memblockq *bq, pa_buffer_attr *a);
249 void pa_memblockq_willneed(pa_memblockq *bq);
254 bool pa_memblockq_is_empty(pa_memblockq *bq);
257 void pa_memblockq_silence(pa_memblockq *bq);
260 bool pa_memblockq_prebuf_active(pa_memblockq *bq);
263 unsigned pa_memblockq_get_nblocks(pa_memblockq *bq);