libavutil/integer.c File Reference

arbitrary precision integers More...

#include "common.h"
#include "integer.h"
#include "avassert.h"

Go to the source code of this file.

Functions

AVInteger av_add_i (AVInteger a, AVInteger b)
AVInteger av_sub_i (AVInteger a, AVInteger b)
int av_log2_i (AVInteger a)
 Return the rounded-down value of the base 2 logarithm of the given AVInteger.
AVInteger av_mul_i (AVInteger a, AVInteger b)
int av_cmp_i (AVInteger a, AVInteger b)
 Return 0 if a==b, 1 if a>b and -1 if a<b.
AVInteger av_shr_i (AVInteger a, int s)
 bitwise shift
AVInteger av_mod_i (AVInteger *quot, AVInteger a, AVInteger b)
 Return a % b.
AVInteger av_div_i (AVInteger a, AVInteger b)
 Return a/b.
AVInteger av_int2i (int64_t a)
 Convert the given int64_t to an AVInteger.
int64_t av_i2int (AVInteger a)
 Convert the given AVInteger to an int64_t.


Detailed Description

arbitrary precision integers

Author:
Michael Niedermayer <michaelni@gmx.at>

Definition in file integer.c.


Function Documentation

AVInteger av_add_i ( AVInteger  a,
AVInteger  b 
)

Definition at line 32 of file integer.c.

Referenced by av_rescale_rnd().

int av_cmp_i ( AVInteger  a,
AVInteger  b 
)

Return 0 if a==b, 1 if a>b and -1 if a<b.

Definition at line 83 of file integer.c.

Referenced by av_mod_i().

AVInteger av_div_i ( AVInteger  a,
AVInteger  b 
)

Return a/b.

Definition at line 133 of file integer.c.

Referenced by av_rescale_rnd().

int64_t av_i2int ( AVInteger  a  )  const

Convert the given AVInteger to an int64_t.

If the AVInteger is too large to fit into an int64_t, then only the least significant 64 bits will be used.

Definition at line 150 of file integer.c.

Referenced by av_rescale_rnd().

AVInteger av_int2i ( int64_t  a  ) 

Convert the given int64_t to an AVInteger.

Definition at line 139 of file integer.c.

Referenced by av_rescale_rnd().

int av_log2_i ( AVInteger  a  )  const

Return the rounded-down value of the base 2 logarithm of the given AVInteger.

This is simply the index of the most significant bit which is 1, or 0 if all bits are 0.

Definition at line 52 of file integer.c.

Referenced by av_mod_i(), and av_mul_i().

AVInteger av_mod_i ( AVInteger quot,
AVInteger  a,
AVInteger  b 
)

Return a % b.

Parameters:
quot a/b will be stored here.

Definition at line 109 of file integer.c.

Referenced by av_div_i().

AVInteger av_mul_i ( AVInteger  a,
AVInteger  b 
)

Definition at line 62 of file integer.c.

Referenced by av_rescale_rnd().

AVInteger av_shr_i ( AVInteger  a,
int  s 
) const

bitwise shift

Parameters:
s the number of bits by which the value should be shifted right, may be negative for shifting left

Definition at line 95 of file integer.c.

Referenced by av_mod_i().

AVInteger av_sub_i ( AVInteger  a,
AVInteger  b 
)

Definition at line 42 of file integer.c.

Referenced by av_mod_i().


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