diff libswscale/rgb2rgb_template.c @ 22960:2d1ad4285df4

Remove code duplication in sws_rgb2rgb_init. The lists of assignments of all rgbxtoy variants are removed from sws_rgb2rgb_init and replaced by a single list inside the template file. This way, multiple lists are generated by the preprocessor and each list gets its own initialization function. Those are called from the main sws_rgb2rgb_init function, if applicable.
author ivo
date Wed, 11 Apr 2007 21:00:25 +0000
parents 1f2ba24b4e47
children 59671a52cc82
line wrap: on
line diff
--- a/libswscale/rgb2rgb_template.c	Wed Apr 11 20:31:21 2007 +0000
+++ b/libswscale/rgb2rgb_template.c	Wed Apr 11 21:00:25 2007 +0000
@@ -2686,3 +2686,35 @@
 		);
 #endif
 }
+
+static inline void RENAME(rgb2rgb_init)(void){
+	rgb15to16= RENAME(rgb15to16);
+	rgb15to24= RENAME(rgb15to24);
+	rgb15to32= RENAME(rgb15to32);
+	rgb16to24= RENAME(rgb16to24);
+	rgb16to32= RENAME(rgb16to32);
+	rgb16to15= RENAME(rgb16to15);
+	rgb24to16= RENAME(rgb24to16);
+	rgb24to15= RENAME(rgb24to15);
+	rgb24to32= RENAME(rgb24to32);
+	rgb32to16= RENAME(rgb32to16);
+	rgb32to15= RENAME(rgb32to15);
+	rgb32to24= RENAME(rgb32to24);
+	rgb24tobgr15= RENAME(rgb24tobgr15);
+	rgb24tobgr16= RENAME(rgb24tobgr16);
+	rgb24tobgr24= RENAME(rgb24tobgr24);
+	rgb32tobgr32= RENAME(rgb32tobgr32);
+	rgb32tobgr16= RENAME(rgb32tobgr16);
+	rgb32tobgr15= RENAME(rgb32tobgr15);
+	yv12toyuy2= RENAME(yv12toyuy2);
+	yv12touyvy= RENAME(yv12touyvy);
+	yuv422ptoyuy2= RENAME(yuv422ptoyuy2);
+	yuy2toyv12= RENAME(yuy2toyv12);
+//	uyvytoyv12= RENAME(uyvytoyv12);
+//	yvu9toyv12= RENAME(yvu9toyv12);
+	planar2x= RENAME(planar2x);
+	rgb24toyv12= RENAME(rgb24toyv12);
+	interleaveBytes= RENAME(interleaveBytes);
+	vu9_to_vu12= RENAME(vu9_to_vu12);
+	yvu9_to_yuy2= RENAME(yvu9_to_yuy2);
+}