#include <float.h>#include "attributes.h"#include "avutil.h"#include "common.h"#include "eval.h"#include "ffmath.h"#include "log.h"#include "mathematics.h"#include "mem.h"#include "sfc64.h"#include "time.h"#include "avstring.h"#include "reverse.h"Go to the source code of this file.
simple arithmetic expression evaluator.
see http://joe.hotchkiss.com/programming/eval/eval.html
Definition in file eval.c.
Parse the string in numstr and return its value as a double.
If the string is empty, contains only whitespaces, or does not contain an initial substring that has the expected syntax for a floating-point number, no conversion is performed. In this case, returns a value of zero and the value returned in tail is the value of numstr.
Definition at line 107 of file eval.c.
Referenced by ff_parse_sample_rate(), parse_number(), parse_points_str(), parse_primary(), parse_string(), parse_weights(), set_param(), var_read_float(), vgs_eval(), and vgs_parse_numeric_argument().
Definition at line 148 of file eval.c.
Referenced by parse_primary().
Definition at line 181 of file eval.c.
Referenced by parse_primary().
Definition at line 186 of file eval.c.
Referenced by av_expr_eval().
Definition at line 639 of file eval.c.
Referenced by av_expr_parse(), and parse_primary().
Free a parsed expression previously created with av_expr_parse().
Definition at line 358 of file eval.c.
Referenced by addroi_uninit(), av_expr_free(), av_expr_parse(), av_expr_parse_and_eval(), avfilter_free(), command(), config_input(), config_output(), config_params(), config_props(), eval_expr(), ff_rate_control_uninit(), generate_kernel(), geq_uninit(), init(), init_axis_color(), init_cqt(), init_volume(), libplacebo_uninit(), noise_close(), nppscale_parse_expr(), nppscale_uninit(), ost_free(), overlay_cuda_uninit(), parse_channel_expressions(), parse_expr(), parse_factor(), parse_primary(), parse_subexpr(), parse_term(), process_command(), scale_parse_expr(), set_enable_expr(), set_expr(), setts_close(), uninit(), and vgs_statement_free().
Definition at line 369 of file eval.c.
Referenced by parse_dB(), and parse_pow().
Definition at line 530 of file eval.c.
Referenced by parse_expr(), parse_factor(), parse_subexpr(), and parse_term().
Definition at line 542 of file eval.c.
Referenced by parse_dB().
Definition at line 549 of file eval.c.
Referenced by parse_factor().
Definition at line 564 of file eval.c.
Referenced by parse_term().
Definition at line 591 of file eval.c.
Referenced by parse_subexpr().
Definition at line 615 of file eval.c.
Referenced by parse_expr().
Definition at line 669 of file eval.c.
Referenced by av_expr_parse().
Parse an expression.
Definition at line 710 of file eval.c.
Referenced by addroi_init(), av_expr_parse_and_eval(), config_input(), config_output(), config_params(), config_props(), ff_rate_control_init(), generate_kernel(), geq_init(), init(), init_axis_color(), init_cqt(), init_volume(), initialize(), libplacebo_init(), modplug_read_header(), noise_init(), nppscale_parse_expr(), process_command(), process_forced_keyframes(), scale_parse_expr(), set_enable_expr(), set_expr(), setts_init(), and vgs_parse_numeric_argument().
Definition at line 766 of file eval.c.
Referenced by av_expr_count_func(), and av_expr_count_vars().
Track the presence of variables and their number of occurrences in a parsed expression.
Definition at line 782 of file eval.c.
Referenced by check_exprs(), nppscale_scale(), and scale_frame().
Track the presence of user provided functions and their number of occurrences in a parsed expression.
Definition at line 787 of file eval.c.
Referenced by geq_init().
Evaluate a previously parsed expression.
Definition at line 792 of file eval.c.
Referenced by activate(), addroi_config_input(), av_expr_parse_and_eval(), config_input(), config_output(), config_props(), do_eval(), draw_text(), eval_expr(), eval_pts(), evaluate_timeline_at_frame(), filter_channel(), filter_frame(), forced_kf_apply(), generate_kernel(), get_max_local_gain(), get_qscale(), get_target_gain(), init(), init_axis_color(), init_cqt(), init_volume(), modplug_read_packet(), noise(), nppscale_eval_dimensions(), output_single_frame(), parse_expr(), request_frame(), scale_eval_dimensions(), select_frame(), set_brightness(), set_contrast(), set_gamma(), set_saturation(), set_volume(), setts_filter(), slice_geq_filter(), update_alpha(), update_context(), update_crops(), and vgs_eval().
Parse and evaluate an expression.
Note, this is significantly slower than av_expr_eval().
Definition at line 805 of file eval.c.
Referenced by activate(), av_parse_ratio(), calc_persp_luts(), config_input(), config_output_props(), config_props(), drawbox_vaapi_config_output(), eval_expr(), ff_print_eval_expr(), ff_print_formatted_eval_expr(), ff_scale_eval_dimensions(), filter_frame(), generate_kernel(), get_aspect_ratio(), main(), pad_opencl_config_output(), pad_vaapi_config_output(), and set_string_number().
Definition at line 61 of file eval.c.
Referenced by av_expr_eval(), and av_expr_parse().
Definition at line 73 of file eval.c.
Referenced by ac3_exponent_min_c(), ac3_extract_exponents_c(), acelp_decode_gain_codef(), adpcm_decode_frame(), apply_channel_coupling(), ath(), av_bessel_i0(), av_div_sf_ieee754(), av_mul_sf_ieee754(), bit_allocate(), bitreduction(), comp_harmonic_coeff(), compute_exp_strategy(), config_filter(), config_input(), config_output(), convert_sp2zp(), create_freq_table(), decode(), decode_aiff_header(), decode_subframe(), dnn_detect_parse_yolo_output(), encode_exp_vlc(), encode_exponents(), encode_exponents_blk_ch(), erf(), estimate_pitch(), eval_expr(), evrc_decode_frame(), exit_handler(), fade_gain(), ff_ac3_bit_alloc_calc_psd(), ff_tx_mdct_fwd(), ff_tx_mdct_inv(), filter_dbl(), filter_frame(), fir_to_phase(), gaussian(), generate_min_phase_kernel(), generate_window_func(), get_aiff_header(), get_coef(), get_volume(), hom(), init(), init_gaussian_filter(), init_pass2(), init_weights_pipeline(), mapres(), modify_qscale(), mult(), nb_decode(), noise_filter(), output_gain(), parse_mantissas(), parse_points(), parse_primary(), put_float(), qdm2_fft_decode_tones(), qdm2_fft_init_coefficient(), quant(), quantize_mantissas_blk_ch(), sbr_hf_g_filt_c(), scalbnl(), set_ap1(), set_band_parameters(), set_default_ctl_value(), set_gauss(), set_parameters(), sigmoid(), spectral_flatness(), speex_std_stereo(), stream_component_open(), swri_dither_init(), sws_getGaussianVec(), trc_arib_std_b67_inv(), try_export_flags(), twinvq_mulawinv(), unsharp_opencl_make_filter_params(), vorbis_floor0_decode(), vorbisfloat2float(), and wv_get_value_float().
Referenced by av_strtod().
Definition at line 98 of file eval.c.
Referenced by parse_primary().
Definition at line 99 of file eval.c.
Referenced by make_eval_expr().
Referenced by jxl_u32(), and parse_primary().