• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 #ifndef fooraoppacketbufferfoo
2 #define fooraoppacketbufferfoo
3 
4 /***
5   This file is part of PulseAudio.
6 
7   Copyright 2013 Matthias Wabersich
8   Copyright 2013 Hajime Fujita
9 
10   PulseAudio is free software; you can redistribute it and/or modify
11   it under the terms of the GNU Lesser General Public License as published
12   by the Free Software Foundation; either version 2.1 of the License,
13   or (at your option) any later version.
14 
15   PulseAudio is distributed in the hope that it will be useful, but
16   WITHOUT ANY WARRANTY; without even the implied warranty of
17   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
18   General Public License for more details.
19 
20   You should have received a copy of the GNU Lesser General Public License
21   along with PulseAudio; if not, write to the Free Software
22   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
23   USA.
24 ***/
25 
26 #include <pulsecore/memblock.h>
27 #include <pulsecore/memchunk.h>
28 
29 typedef struct pa_raop_packet_buffer pa_raop_packet_buffer;
30 
31 /* Allocates a new circular packet buffer, size: Maximum number of packets to store */
32 pa_raop_packet_buffer *pa_raop_packet_buffer_new(pa_mempool *mempool, const size_t size);
33 void pa_raop_packet_buffer_free(pa_raop_packet_buffer *pb);
34 
35 void pa_raop_packet_buffer_reset(pa_raop_packet_buffer *pb, uint16_t seq);
36 
37 pa_memchunk *pa_raop_packet_buffer_prepare(pa_raop_packet_buffer *pb, uint16_t seq, const size_t size);
38 pa_memchunk *pa_raop_packet_buffer_retrieve(pa_raop_packet_buffer *pb, uint16_t seq);
39 
40 #endif
41