#include <stdarg.h>
#include <stdio.h>
#include <string.h>
#include "avassert.h"
#include "bprint.h"
#include "common.h"
#include "error.h"
#include "mem.h"
Go to the source code of this file.
Defines | |
#define | av_bprint_room(buf) ((buf)->size - FFMIN((buf)->len, (buf)->size)) |
#define | av_bprint_is_allocated(buf) ((buf)->str != (buf)->reserved_internal_buffer) |
Functions | |
static int | av_bprint_alloc (AVBPrint *buf, unsigned room) |
static void | av_bprint_grow (AVBPrint *buf, unsigned extra_len) |
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,...) |
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. | |
int | av_bprint_finalize (AVBPrint *buf, char **ret_str) |
Finalize a print buffer. |
#define av_bprint_is_allocated | ( | buf | ) | ((buf)->str != (buf)->reserved_internal_buffer) |
Definition at line 33 of file bprint.c.
Referenced by av_bprint_chars(), av_bprint_init(), and av_bprintf().
void av_bprint_chars | ( | AVBPrint * | buf, | |
char | c, | |||
unsigned | n | |||
) |
Append char c n times to a print buffer.
Definition at line 114 of file bprint.c.
Referenced by avfilter_graph_dump_to_buf(), c_escape_str(), csv_escape_str(), extract_cue(), ff_smil_extract_next_chunk(), flat_escape_key_str(), flat_escape_value_str(), ini_escape_str(), json_escape_str(), make_command_flags_str(), microdvd_decode_frame(), rt_event_to_ass(), sami_paragraph_to_ass(), subviewer_event_to_ass(), text_to_ass(), webvtt_event_to_ass(), writer_print_data(), and xml_escape_str().
void av_bprint_clear | ( | AVBPrint * | buf | ) |
Reset the string to "" but keep internal allocated data.
Definition at line 132 of file bprint.c.
Referenced by extract_cue(), flat_print_section_header(), flat_print_str(), ini_print_str(), json_print_item_str(), microdvd_init(), realtext_read_header(), sami_paragraph_to_ass(), sami_read_header(), show_frame(), and xml_print_str().
Finalize a print buffer.
The print buffer can no longer be used afterwards, but the len and size fields are still valid.
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().
static void av_bprint_grow | ( | AVBPrint * | buf, | |
unsigned | extra_len | |||
) | [static] |
void av_bprint_init | ( | AVBPrint * | buf, | |
unsigned | size_init, | |||
unsigned | size_max | |||
) |
Init a print buffer.
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.
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().
void av_bprintf | ( | AVBPrint * | buf, | |
const char * | fmt, | |||
... | ||||
) |
Definition at line 91 of file bprint.c.
Referenced by av_bprint_channel_layout(), avfilter_graph_dump_to_buf(), c_escape_str(), config_output(), configure_input_video_filter(), configure_output_audio_filter(), dvdsub_init(), flat_escape_value_str(), flat_print_section_header(), ini_escape_str(), ini_print_section_header(), insert_datetime(), insert_text(), jacosub_read_header(), jacosub_to_ass(), json_escape_str(), make_command_flags_str(), microdvd_close_no_persistent_tags(), microdvd_decode_frame(), microdvd_init(), microdvd_open_tags(), print_link_prop(), print_report(), rt_event_to_ass(), sami_paragraph_to_ass(), sami_read_header(), subviewer_event_to_ass(), subviewer_read_header(), text_to_ass(), webvtt_event_to_ass(), writer_print_data(), writer_print_rational(), and xml_escape_str().