libavutil/bprint.h File Reference

#include "attributes.h"

Go to the source code of this file.

Data Structures

struct  AVBPrint
 Buffer to print data progressively. More...

Defines

#define FF_PAD_STRUCTURE(size,...)
 Define a structure with extra padding to a fixed size This helps ensuring binary compatibility with future versions.
#define AV_BPRINT_SIZE_UNLIMITED   ((unsigned)-1)
 Convenience macros for special values for av_bprint_init() size_max parameter.
#define AV_BPRINT_SIZE_AUTOMATIC   1
#define AV_BPRINT_SIZE_COUNT_ONLY   0

Functions

void av_bprint_init (AVBPrint *buf, unsigned size_init, unsigned size_max)
 Init a print buffer.
void av_bprint_init_for_buffer (AVBPrint *buf, char *buffer, unsigned size)
 Init a print buffer using a pre-existing buffer.
void av_bprintf (AVBPrint *buf, const char *fmt,...) av_printf_format(2
 Append a formated string to a print buffer.
void void av_bprint_chars (AVBPrint *buf, char c, unsigned n)
 Append char c n times to a print buffer.
void av_bprint_clear (AVBPrint *buf)
 Reset the string to "" but keep internal allocated data.
static int av_bprint_is_complete (AVBPrint *buf)
 Test if the print buffer is complete (not truncated).
int av_bprint_finalize (AVBPrint *buf, char **ret_str)
 Finalize a print buffer.


Define Documentation

#define AV_BPRINT_SIZE_AUTOMATIC   1

Definition at line 89 of file bprint.h.

Referenced by make_command_flags_str(), microdvd_init(), and writer_print_rational().

#define AV_BPRINT_SIZE_COUNT_ONLY   0

Definition at line 90 of file bprint.h.

#define AV_BPRINT_SIZE_UNLIMITED   ((unsigned)-1)

#define FF_PAD_STRUCTURE ( size,
...   ) 

Value:

__VA_ARGS__ \
    char reserved_padding[size - sizeof(struct { __VA_ARGS__ })];
Define a structure with extra padding to a fixed size This helps ensuring binary compatibility with future versions.

Definition at line 30 of file bprint.h.


Function Documentation

void void av_bprint_chars ( AVBPrint buf,
char  c,
unsigned  n 
)

void av_bprint_clear ( AVBPrint buf  ) 

int av_bprint_finalize ( AVBPrint buf,
char **  ret_str 
)

Finalize a print buffer.

The print buffer can no longer be used afterwards, but the len and size fields are still valid.

  • [out] ret_str if not NULL, used to return a permanent copy of the buffer contents, or NULL if memory allocation fails; if NULL, the buffer is discarded and freed
    Returns:
    0 for success or error code (probably AVERROR(ENOMEM))

Definition at line 140 of file bprint.c.

Referenced by avfilter_graph_dump(), compact_print_str(), configure_output_audio_filter(), dvdsub_init(), ffprobe_show_program_version(), flat_print_str(), flat_uninit(), ini_print_section_header(), ini_print_str(), jacosub_decode_frame(), jacosub_read_header(), json_print_int(), json_print_item_str(), json_print_section_header(), microdvd_decode_frame(), print_report(), realtext_decode_frame(), realtext_read_header(), sami_close(), sami_read_header(), show_frame(), show_packet(), show_stream(), subviewer_decode_frame(), subviewer_read_header(), webvtt_read_header(), writer_print_data(), and xml_print_str().

void av_bprint_init ( AVBPrint buf,
unsigned  size_init,
unsigned  size_max 
)

Init a print buffer.

Parameters:
buf buffer to init
size_init initial size (including the final 0)
size_max maximum size; 0 means do not write anything, just count the length; 1 is replaced by the maximum value for automatic storage; any large value means that the internal buffer will be reallocated as needed up to that limit; -1 is converted to UINT_MAX, the largest limit possible. Check also AV_BPRINT_SIZE_* macros.

Definition at line 66 of file bprint.c.

Referenced by avfilter_graph_dump(), compact_print_str(), config_output(), configure_input_video_filter(), configure_output_audio_filter(), dvdsub_init(), ffprobe_show_program_version(), flat_init(), flat_print_str(), ini_print_section_header(), ini_print_str(), jacosub_decode_frame(), jacosub_read_header(), json_print_int(), json_print_item_str(), json_print_section_header(), make_command_flags_str(), microdvd_decode_frame(), microdvd_init(), print_report(), realtext_decode_frame(), realtext_read_header(), sami_init(), sami_read_header(), show_frame(), show_packet(), show_stream(), subviewer_decode_frame(), subviewer_read_header(), webvtt_decode_frame(), webvtt_read_header(), writer_print_data(), writer_print_rational(), and xml_print_str().

void av_bprint_init_for_buffer ( AVBPrint buf,
char *  buffer,
unsigned  size 
)

Init a print buffer using a pre-existing buffer.

The buffer will not be reallocated.

Parameters:
buf buffer structure to init
buffer byte buffer to use for the string data
size size of buffer

Definition at line 82 of file bprint.c.

Referenced by av_get_channel_layout_string().

static int av_bprint_is_complete ( AVBPrint buf  )  [inline, static]

Test if the print buffer is complete (not truncated).

It may have been truncated due to a memory allocation failure or the size_max limit (compare size and size_max if necessary).

Definition at line 139 of file bprint.h.

Referenced by av_bprint_alloc().

void av_bprintf ( AVBPrint buf,
const char *  fmt,
  ... 
)

Append a formated string to a print buffer.


Generated on Fri Oct 26 02:50:12 2012 for FFmpeg by  doxygen 1.5.8