ALSA project - the C library reference
Loading...
Searching...
No Matches
input.c File Reference

Generic stdio-like input interface. More...

Functions

int snd_input_close (snd_input_t *input)
 Closes an input handle.
 
int snd_input_scanf (snd_input_t *input, const char *format,...)
 Reads formatted input (like fscanf(3)) from an input handle.
 
char * snd_input_gets (snd_input_t *input, char *str, size_t size)
 Reads a line from an input handle (like fgets(3)).
 
int snd_input_getc (snd_input_t *input)
 Reads a character from an input handle (like fgetc(3)).
 
int snd_input_ungetc (snd_input_t *input, int c)
 Puts the last character read back to an input handle (like ungetc(3)).
 
int snd_input_stdio_attach (snd_input_t **inputp, FILE *fp, int _close)
 Creates a new input object using an existing stdio FILE pointer.
 
int snd_input_stdio_open (snd_input_t **inputp, const char *file, const char *mode)
 Creates a new input object reading from a file.
 
int snd_input_buffer_open (snd_input_t **inputp, const char *buf, ssize_t size)
 Creates a new input object from a memory buffer.
 

Detailed Description

Generic stdio-like input interface.

Author
Abramo Bagnara abram.nosp@m.o@al.nosp@m.sa-pr.nosp@m.ojec.nosp@m.t.org
Date
2000

Generic stdio-like input interface

Function Documentation

◆ snd_input_buffer_open()

int snd_input_buffer_open ( snd_input_t ** inputp,
const char * buf,
ssize_t size )

Creates a new input object from a memory buffer.

Parameters
inputpThe function puts the pointer to the new input object at the address specified by inputp.
bufAddress of the input buffer.
sizeSize of the input buffer.
Returns
Zero if successful, otherwise a negative error code.

This functions creates a copy of the input buffer, so the application is not required to preserve the buffer after this function has been called.

◆ snd_input_close()

int snd_input_close ( snd_input_t * input)

Closes an input handle.

Parameters
inputThe input handle to be closed.
Returns
Zero if successful, otherwise a negative error code.

◆ snd_input_getc()

int snd_input_getc ( snd_input_t * input)

Reads a character from an input handle (like fgetc(3)).

Parameters
inputThe input handle.
Returns
The character read, or EOF on end of file or error.

◆ snd_input_gets()

char * snd_input_gets ( snd_input_t * input,
char * str,
size_t size )

Reads a line from an input handle (like fgets(3)).

Parameters
inputThe input handle.
strAddress of the destination buffer.
sizeThe size of the destination buffer.
Returns
Pointer to the buffer if successful, otherwise NULL.

Like fgets, the returned string is zero-terminated, and contains the new-line character '\n' if the line fits into the buffer.

◆ snd_input_scanf()

int snd_input_scanf ( snd_input_t * input,
const char * format,
... )

Reads formatted input (like fscanf(3)) from an input handle.

Parameters
inputThe input handle.
formatFormat string in fscanf format.
...Other fscanf arguments.
Returns
The number of input items assigned, or EOF.
Bug
Reading from a memory buffer doesn't work.

◆ snd_input_stdio_attach()

int snd_input_stdio_attach ( snd_input_t ** inputp,
FILE * fp,
int _close )

Creates a new input object using an existing stdio FILE pointer.

Parameters
inputpThe function puts the pointer to the new input object at the address specified by inputp.
fpThe FILE pointer to read from. Reading begins at the current file position.
_closeClose flag. Set this to 1 if snd_input_close should close fp by calling fclose.
Returns
Zero if successful, otherwise a negative error code.

◆ snd_input_stdio_open()

int snd_input_stdio_open ( snd_input_t ** inputp,
const char * file,
const char * mode )

Creates a new input object reading from a file.

Parameters
inputpThe functions puts the pointer to the new input object at the address specified by inputp.
fileThe name of the file to read from.
modeThe open mode, like fopen(3).
Returns
Zero if successful, otherwise a negative error code.

◆ snd_input_ungetc()

int snd_input_ungetc ( snd_input_t * input,
int c )

Puts the last character read back to an input handle (like ungetc(3)).

Parameters
inputThe input handle.
cThe character to push back.
Returns
The character pushed back, or EOF on error.