[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [51336] trunk/blender/source/blender: Color Management: remove unused function and get rid of unneeded float-> byte conversion

Sergey Sharybin sergey.vfx at gmail.com
Mon Oct 15 09:47:40 CEST 2012


Revision: 51336
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=51336
Author:   nazgul
Date:     2012-10-15 07:47:38 +0000 (Mon, 15 Oct 2012)
Log Message:
-----------
Color Management: remove unused function and get rid of unneeded float->byte conversion

Modified Paths:
--------------
    trunk/blender/source/blender/blenkernel/BKE_colortools.h
    trunk/blender/source/blender/blenkernel/intern/colortools.c
    trunk/blender/source/blender/blenkernel/intern/tracking.c
    trunk/blender/source/blender/makesrna/intern/rna_image_api.c

Modified: trunk/blender/source/blender/blenkernel/BKE_colortools.h
===================================================================
--- trunk/blender/source/blender/blenkernel/BKE_colortools.h	2012-10-15 06:12:05 UTC (rev 51335)
+++ trunk/blender/source/blender/blenkernel/BKE_colortools.h	2012-10-15 07:47:38 UTC (rev 51336)
@@ -88,7 +88,6 @@
 void                curvemapping_table_RGBA(const struct CurveMapping *cumap, float **array, int *size);
 
 /* non-const, these modify the curve */
-void                curvemapping_do_ibuf(struct CurveMapping *cumap, struct ImBuf *ibuf);
 void                curvemapping_premultiply(struct CurveMapping *cumap, int restore);
 
 

Modified: trunk/blender/source/blender/blenkernel/intern/colortools.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/colortools.c	2012-10-15 06:12:05 UTC (rev 51335)
+++ trunk/blender/source/blender/blenkernel/intern/colortools.c	2012-10-15 07:47:38 UTC (rev 51336)
@@ -835,64 +835,6 @@
 	vecout_byte[2] = FTOCHAR(vecout[2]);
 }
 
-
-/* only used for image editor curves */
-void curvemapping_do_ibuf(CurveMapping *cumap, ImBuf *ibuf)
-{
-	ImBuf *tmpbuf;
-	int pixel;
-	float *pix_in;
-	float col[3];
-	int stride = 4;
-	float *pix_out;
-	
-	if (ibuf == NULL)
-		return;
-	if (ibuf->rect_float == NULL)
-		IMB_float_from_rect(ibuf);
-	else if (ibuf->rect == NULL)
-		imb_addrectImBuf(ibuf);
-	
-	if (!ibuf->rect || !ibuf->rect_float)
-		return;
-	
-	/* work on a temp buffer, so can color manage afterwards.
-	 * No worse off memory wise than comp nodes */
-	tmpbuf = IMB_dupImBuf(ibuf);
-	
-	curvemapping_premultiply(cumap, 0);
-	
-	pix_in = ibuf->rect_float;
-	pix_out = tmpbuf->rect_float;
-
-	if (ibuf->channels)
-		stride = ibuf->channels;
-	
-	for (pixel = ibuf->x * ibuf->y; pixel > 0; pixel--, pix_in += stride, pix_out += stride) {
-		if (stride < 3) {
-			col[0] = curvemap_evaluateF(cumap->cm, *pix_in);
-			
-			pix_out[1] = pix_out[2] = pix_out[3] = pix_out[0] = col[0];
-		}
-		else {
-			curvemapping_evaluate_premulRGBF(cumap, col, pix_in);
-			pix_out[0] = col[0];
-			pix_out[1] = col[1];
-			pix_out[2] = col[2];
-			if (stride > 3)
-				pix_out[3] = pix_in[3];
-			else
-				pix_out[3] = 1.f;
-		}
-	}
-	
-	IMB_rect_from_float(tmpbuf);
-	SWAP(unsigned int *, tmpbuf->rect, ibuf->rect);
-	IMB_freeImBuf(tmpbuf);
-	
-	curvemapping_premultiply(cumap, 1);
-}
-
 int curvemapping_RGBA_does_something(const CurveMapping *cumap)
 {
 	int a;

Modified: trunk/blender/source/blender/blenkernel/intern/tracking.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/tracking.c	2012-10-15 06:12:05 UTC (rev 51335)
+++ trunk/blender/source/blender/blenkernel/intern/tracking.c	2012-10-15 07:47:38 UTC (rev 51336)
@@ -1494,7 +1494,8 @@
 			                                   ibuf->x, ibuf->y, overscan, ibuf->channels);
 		}
 
-		resibuf->userflags |= IB_RECT_INVALID;
+		if (ibuf->rect)
+			imb_freerectImBuf(ibuf);
 	}
 	else {
 		if (undistort) {
@@ -1512,9 +1513,8 @@
 	(void) overscan;
 	(void) undistort;
 
-	if (ibuf->rect_float) {
-		resibuf->userflags |= IB_RECT_INVALID;
-	}
+	if (ibuf->rect_float && ibuf->rect)
+		imb_freerectImBuf(ibuf);
 #endif
 
 	return resibuf;

Modified: trunk/blender/source/blender/makesrna/intern/rna_image_api.c
===================================================================
--- trunk/blender/source/blender/makesrna/intern/rna_image_api.c	2012-10-15 06:12:05 UTC (rev 51335)
+++ trunk/blender/source/blender/makesrna/intern/rna_image_api.c	2012-10-15 07:47:38 UTC (rev 51336)
@@ -184,7 +184,10 @@
 		return;
 	}
 
-	IMB_rect_from_float(ibuf);
+	if (ibuf->rect)
+		IMB_rect_from_float(ibuf);
+
+	ibuf->userflags |= IB_DISPLAY_BUFFER_INVALID;
 }
 
 static void rna_Image_scale(Image *image, ReportList *reports, int width, int height)




More information about the Bf-blender-cvs mailing list