comparison rational.h @ 957:e34e8d654ded libavutil

Fix grammar errors in documentation
author mru
date Wed, 30 Jun 2010 15:38:06 +0000
parents 0795a743bda1
children
comparison
equal deleted inserted replaced
956:2894d4c208dc 957:e34e8d654ded
38 int num; ///< numerator 38 int num; ///< numerator
39 int den; ///< denominator 39 int den; ///< denominator
40 } AVRational; 40 } AVRational;
41 41
42 /** 42 /**
43 * Compares two rationals. 43 * Compare two rationals.
44 * @param a first rational 44 * @param a first rational
45 * @param b second rational 45 * @param b second rational
46 * @return 0 if a==b, 1 if a>b and -1 if a<b 46 * @return 0 if a==b, 1 if a>b and -1 if a<b
47 */ 47 */
48 static inline int av_cmp_q(AVRational a, AVRational b){ 48 static inline int av_cmp_q(AVRational a, AVRational b){
51 if(tmp) return (tmp>>63)|1; 51 if(tmp) return (tmp>>63)|1;
52 else return 0; 52 else return 0;
53 } 53 }
54 54
55 /** 55 /**
56 * Converts rational to double. 56 * Convert rational to double.
57 * @param a rational to convert 57 * @param a rational to convert
58 * @return (double) a 58 * @return (double) a
59 */ 59 */
60 static inline double av_q2d(AVRational a){ 60 static inline double av_q2d(AVRational a){
61 return a.num / (double) a.den; 61 return a.num / (double) a.den;
62 } 62 }
63 63
64 /** 64 /**
65 * Reduces a fraction. 65 * Reduce a fraction.
66 * This is useful for framerate calculations. 66 * This is useful for framerate calculations.
67 * @param dst_num destination numerator 67 * @param dst_num destination numerator
68 * @param dst_den destination denominator 68 * @param dst_den destination denominator
69 * @param num source numerator 69 * @param num source numerator
70 * @param den source denominator 70 * @param den source denominator
72 * @return 1 if exact, 0 otherwise 72 * @return 1 if exact, 0 otherwise
73 */ 73 */
74 int av_reduce(int *dst_num, int *dst_den, int64_t num, int64_t den, int64_t max); 74 int av_reduce(int *dst_num, int *dst_den, int64_t num, int64_t den, int64_t max);
75 75
76 /** 76 /**
77 * Multiplies two rationals. 77 * Multiply two rationals.
78 * @param b first rational 78 * @param b first rational
79 * @param c second rational 79 * @param c second rational
80 * @return b*c 80 * @return b*c
81 */ 81 */
82 AVRational av_mul_q(AVRational b, AVRational c) av_const; 82 AVRational av_mul_q(AVRational b, AVRational c) av_const;
83 83
84 /** 84 /**
85 * Divides one rational by another. 85 * Divide one rational by another.
86 * @param b first rational 86 * @param b first rational
87 * @param c second rational 87 * @param c second rational
88 * @return b/c 88 * @return b/c
89 */ 89 */
90 AVRational av_div_q(AVRational b, AVRational c) av_const; 90 AVRational av_div_q(AVRational b, AVRational c) av_const;
91 91
92 /** 92 /**
93 * Adds two rationals. 93 * Add two rationals.
94 * @param b first rational 94 * @param b first rational
95 * @param c second rational 95 * @param c second rational
96 * @return b+c 96 * @return b+c
97 */ 97 */
98 AVRational av_add_q(AVRational b, AVRational c) av_const; 98 AVRational av_add_q(AVRational b, AVRational c) av_const;
99 99
100 /** 100 /**
101 * Subtracts one rational from another. 101 * Subtract one rational from another.
102 * @param b first rational 102 * @param b first rational
103 * @param c second rational 103 * @param c second rational
104 * @return b-c 104 * @return b-c
105 */ 105 */
106 AVRational av_sub_q(AVRational b, AVRational c) av_const; 106 AVRational av_sub_q(AVRational b, AVRational c) av_const;
107 107
108 /** 108 /**
109 * Converts a double precision floating point number to a rational. 109 * Convert a double precision floating point number to a rational.
110 * @param d double to convert 110 * @param d double to convert
111 * @param max the maximum allowed numerator and denominator 111 * @param max the maximum allowed numerator and denominator
112 * @return (AVRational) d 112 * @return (AVRational) d
113 */ 113 */
114 AVRational av_d2q(double d, int max) av_const; 114 AVRational av_d2q(double d, int max) av_const;
118 * than q1, 0 if they have the same distance. 118 * than q1, 0 if they have the same distance.
119 */ 119 */
120 int av_nearer_q(AVRational q, AVRational q1, AVRational q2); 120 int av_nearer_q(AVRational q, AVRational q1, AVRational q2);
121 121
122 /** 122 /**
123 * Finds the nearest value in q_list to q. 123 * Find the nearest value in q_list to q.
124 * @param q_list an array of rationals terminated by {0, 0} 124 * @param q_list an array of rationals terminated by {0, 0}
125 * @return the index of the nearest value found in the array 125 * @return the index of the nearest value found in the array
126 */ 126 */
127 int av_find_nearest_q_idx(AVRational q, const AVRational* q_list); 127 int av_find_nearest_q_idx(AVRational q, const AVRational* q_list);
128 128