liboggz  1.1.1
oggz.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2003 Commonwealth Scientific and Industrial Research
3  Organisation (CSIRO) Australia
4 
5  Redistribution and use in source and binary forms, with or without
6  modification, are permitted provided that the following conditions
7  are met:
8 
9  - Redistributions of source code must retain the above copyright
10  notice, this list of conditions and the following disclaimer.
11 
12  - Redistributions in binary form must reproduce the above copyright
13  notice, this list of conditions and the following disclaimer in the
14  documentation and/or other materials provided with the distribution.
15 
16  - Neither the name of CSIRO Australia nor the names of its
17  contributors may be used to endorse or promote products derived from
18  this software without specific prior written permission.
19 
20  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
21  ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
22  LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
23  PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE ORGANISATION OR
24  CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
25  EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
26  PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
27  PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
28  LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
29  NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
30  SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31 */
32 
33 #ifndef __OGGZ_H__
34 #define __OGGZ_H__
35 
36 #include <stdio.h>
37 #include <sys/types.h>
38 
39 #include <ogg/ogg.h>
40 #include <oggz/oggz_constants.h>
41 #include <oggz/oggz_table.h>
42 
43 #ifdef __cplusplus
44 extern "C" {
45 #endif
46 
441 typedef void OGGZ;
442 
449 OGGZ * oggz_new (int flags);
450 
458 OGGZ * oggz_open (const char * filename, int flags);
459 
467 OGGZ * oggz_open_stdio (FILE * file, int flags);
468 
477 int oggz_flush (OGGZ * oggz);
478 
500 long oggz_run (OGGZ * oggz);
501 
510 int oggz_run_set_blocksize (OGGZ * oggz, long blocksize);
511 
519 int oggz_close (OGGZ * oggz);
520 
531 int oggz_get_bos (OGGZ * oggz, long serialno);
532 
543 int oggz_get_eos (OGGZ * oggz, long serialno);
544 
556 
564 long oggz_serialno_new (OGGZ * oggz);
565 
572 const char *
574 
575 #include <oggz/oggz_off_t.h>
576 #include <oggz/oggz_read.h>
577 #include <oggz/oggz_stream.h>
578 #include <oggz/oggz_seek.h>
579 #include <oggz/oggz_write.h>
580 #include <oggz/oggz_io.h>
581 #include <oggz/oggz_comments.h>
582 #include <oggz/oggz_deprecated.h>
583 
584 #ifdef __cplusplus
585 }
586 #endif
587 
588 #endif /* __OGGZ_H__ */
oggz_flush
int oggz_flush(OGGZ *oggz)
Ensure any associated io streams are flushed.
oggz_stream.h
Interfaces for querying Ogg streams.
oggz_constants.h
General constants used by liboggz.
oggz_close
int oggz_close(OGGZ *oggz)
Close an OGGZ handle.
oggz_open_stdio
OGGZ * oggz_open_stdio(FILE *file, int flags)
Create an OGGZ handle associated with a stdio stream.
oggz_comments.h
Reading of comments.
OGGZ
void OGGZ
An opaque handle to an Ogg file.
Definition: oggz.h:441
oggz_content_type
const char * oggz_content_type(OggzStreamContent content)
Return human-readable string representation of a content type.
oggz_get_eos
int oggz_get_eos(OGGZ *oggz, long serialno)
Determine if a given logical bitstream is at eos (end of stream).
oggz_read.h
Interfaces for reading Ogg files and streams.
oggz_table.h
A lookup table.
oggz_run_set_blocksize
int oggz_run_set_blocksize(OGGZ *oggz, long blocksize)
Set the blocksize to use internally for oggz_run()
oggz_off_t.h
Architecture-dependent type and printf format for file position.
oggz_new
OGGZ * oggz_new(int flags)
Create a new OGGZ object.
oggz_io.h
Overriding the functions used for input and output of raw data.
OggzStreamContent
OggzStreamContent
Definition of stream content types.
Definition: oggz_constants.h:106
oggz_seek.h
Seeking within files.
oggz_get_bos
int oggz_get_bos(OGGZ *oggz, long serialno)
Determine if a given logical bitstream is at bos (beginning of stream).
oggz_write.h
Interfaces for writing Ogg files and streams.
oggz_run
long oggz_run(OGGZ *oggz)
Run an OGGZ until completion, or error.
oggz_get_numtracks
int oggz_get_numtracks(OGGZ *oggz)
Query the number of tracks (logical bitstreams).
oggz_open
OGGZ * oggz_open(const char *filename, int flags)
Open an Ogg file, creating an OGGZ handle for it.
oggz_deprecated.h
Deprecated interfaces.
oggz_serialno_new
long oggz_serialno_new(OGGZ *oggz)
Request a new serialno, as required for a new stream, ensuring the serialno is not yet used for any o...