Commit: 0b03ccbbcd7ad6b59022321b0792b6d919e3123f
Author: Dalai Felinto
Date:   Thu Nov 20 10:55:11 2014 -0200
Branches: multiview
https://developer.blender.org/rB0b03ccbbcd7ad6b59022321b0792b6d919e3123f

Replace BLI_listbase_count() by BLI_listbase_count_ex() when possible

===================================================================

M       source/blender/blenkernel/intern/image.c
M       source/blender/compositor/nodes/COM_ImageNode.cpp
M       source/blender/editors/space_image/image_buttons.c
M       source/blender/editors/space_image/image_ops.c
M       source/blender/imbuf/intern/openexr/openexr_api.cpp
M       source/blender/makesrna/intern/rna_nodetree.c
M       source/blender/nodes/composite/nodes/node_composite_switchview.c
M       source/blender/render/intern/source/pipeline.c
M       source/blender/render/intern/source/render_result.c

===================================================================

diff --git a/source/blender/blenkernel/intern/image.c 
b/source/blender/blenkernel/intern/image.c
index fc3d188..36f9505 100644
--- a/source/blender/blenkernel/intern/image.c
+++ b/source/blender/blenkernel/intern/image.c
@@ -2567,7 +2567,7 @@ void BKE_image_signal(Image *ima, ImageUser *iuser, int 
signal)
                        if (BKE_image_has_packedfile(ima)) {
                                const size_t totfiles = image_num_files(ima);
 
-                               if (totfiles != 
BLI_listbase_count(&ima->packedfiles)) {
+                               if (totfiles != 
BLI_listbase_count_ex(&ima->packedfiles, totfiles + 1)) {
                                        /* in case there are new available 
files to be loaded */
                                        image_free_packedfiles(ima);
                                        BKE_image_packfiles(NULL, ima, 
ID_BLEND_PATH(G.main, &ima->id));
@@ -2690,7 +2690,7 @@ void BKE_image_multiview_index(Image *ima, ImageUser 
*iuser)
                        iuser->multi_index = iuser->eye;
                }
                else {
-                       if ((iuser->view < 0) || (iuser->view >= 
BLI_listbase_count(&ima->views))) {
+                       if ((iuser->view < 0) || (iuser->view >= 
BLI_listbase_count_ex(&ima->views, iuser->view + 1))) {
                                iuser->multi_index = iuser->view = 0;
                        }
                        else {
@@ -2727,7 +2727,7 @@ static void image_init_multilayer_multiview_flag(Image 
*ima, RenderResult *rr)
                }
                else {
                        ima->flag &= ~IMA_IS_STEREO;
-                       if (BLI_listbase_count(&rr->views) > 1)
+                       if (BLI_listbase_count_ex(&rr->views, 2) > 1)
                                ima->flag |= IMA_IS_MULTIVIEW;
                        else
                                ima->flag &= IMA_IS_MULTIVIEW;
@@ -2892,7 +2892,7 @@ static void image_add_buffer_cb(void *base, const char 
*str, ImBuf *ibuf, const
 
 static void image_update_multiview_flags(Image *ima)
 {
-       if (BLI_listbase_count(&ima->views) > 1) {
+       if (BLI_listbase_count_ex(&ima->views, 2) > 1) {
                ima->flag |= IMA_IS_MULTIVIEW;
 
                if (BLI_findstring(&ima->views, STEREO_LEFT_NAME, 
offsetof(ImageView, name)) &&
@@ -3175,7 +3175,7 @@ static ImBuf *image_load_movie_file(Image *ima, ImageUser 
*iuser, int frame)
        ibuf = MEM_mallocN(sizeof(ImBuf *) * totviews, "Image Views (movie) 
Imbufs");
 
        if ((BKE_image_has_anim(ima) == false) ||
-           BLI_listbase_count(&ima->anims) != totfiles)
+           totfiles != BLI_listbase_count_ex(&ima->anims, totfiles + 1))
        {
                image_free_anims(ima);
 
@@ -3285,7 +3285,7 @@ static ImBuf *image_load_image_file(Image *ima, ImageUser 
*iuser, int cfra)
                flag |= imbuf_alpha_flags_for_image(ima);
 
                /* XXX what to do */
-               BLI_assert(totfiles == BLI_listbase_count(&ima->packedfiles));
+               BLI_assert(totfiles == BLI_listbase_count_ex(&ima->packedfiles, 
totfiles + 1));
 
                for (i = 0, imapf = ima->packedfiles.first; imapf; imapf = 
imapf->next, i++) {
                        ibuf[i] = IMB_ibImageFromMemory((unsigned char 
*)imapf->packedfile->data, imapf->packedfile->size, flag,
@@ -4246,12 +4246,12 @@ int BKE_image_sequence_guess_offset(Image *image)
 
 bool BKE_image_has_anim(Image *ima)
 {
-       return (BLI_listbase_count(&ima->anims) > 0) && (((ImageAnim *) 
ima->anims.first)->anim != NULL);
+       return (BLI_listbase_count_ex(&ima->anims, 1) > 0) && (((ImageAnim *) 
ima->anims.first)->anim != NULL);
 }
 
 bool BKE_image_has_packedfile(Image *ima)
 {
-       return (BLI_listbase_count(&ima->packedfiles) > 0) && 
(((ImagePackedFile *) ima->packedfiles.first)->packedfile != NULL);
+       return (BLI_listbase_count_ex(&ima->packedfiles, 1) > 0) && 
(((ImagePackedFile *) ima->packedfiles.first)->packedfile != NULL);
 }
 
 /**
@@ -4457,7 +4457,7 @@ void BKE_image_update_views_format(Scene *scene, Image 
*ima)
                }
 
                /* all good */
-               if (BLI_listbase_count(&ima->views) > 1) {
+               if (BLI_listbase_count_ex(&ima->views, 2) > 1) {
                        ima->flag |= IMA_IS_MULTIVIEW;
                        if (BKE_scene_is_stereo3d(&scene->r))
                                ima->flag |= IMA_IS_STEREO;
diff --git a/source/blender/compositor/nodes/COM_ImageNode.cpp 
b/source/blender/compositor/nodes/COM_ImageNode.cpp
index 3ffe685..c6e7e62 100644
--- a/source/blender/compositor/nodes/COM_ImageNode.cpp
+++ b/source/blender/compositor/nodes/COM_ImageNode.cpp
@@ -100,7 +100,7 @@ void ImageNode::convertToOperations(NodeConverter 
&converter, const CompositorCo
                                        int view = (rpass ? rpass->view_id : 0);
 
                                        /* returns the image view to use for 
the current active view */
-                                       if 
(BLI_listbase_count(&image->rr->views) > 1) {
+                                       if 
(BLI_listbase_count_ex(&image->rr->views, 2) > 1) {
                                                const int view_image = 
imageuser->view;
                                                const bool is_allview = 
(view_image == 0); /* if view selected == All (0) */
 
diff --git a/source/blender/editors/space_image/image_buttons.c 
b/source/blender/editors/space_image/image_buttons.c
index c829873..21758ca 100644
--- a/source/blender/editors/space_image/image_buttons.c
+++ b/source/blender/editors/space_image/image_buttons.c
@@ -664,7 +664,7 @@ static void uiblock_layer_pass_buttons(uiLayout *layout, 
Image *image, RenderRes
                UI_but_type_set_menu_from_pulldown(but);
 
                /* view */
-               if (BLI_listbase_count(&rr->views) > 1 && !show_stereo) {
+               if (BLI_listbase_count_ex(&rr->views, 2) > 1 && !show_stereo) {
                        rview = BLI_findlink(&rr->views, iuser->view);
                        display_name = rview ? rview->name : "";
 
diff --git a/source/blender/editors/space_image/image_ops.c 
b/source/blender/editors/space_image/image_ops.c
index 8252c20..e32eadd 100644
--- a/source/blender/editors/space_image/image_ops.c
+++ b/source/blender/editors/space_image/image_ops.c
@@ -1543,7 +1543,7 @@ static int get_multiview_pass_id(RenderResult *rr, 
ImageUser *iuser, const int v
        if (rr == NULL || iuser == NULL)
                return 0;
 
-       if (BLI_listbase_count(&rr->views) < 2)
+       if (BLI_listbase_count_ex(&rr->views, 2) < 2)
                return iuser->pass;
 
        if (RE_HasFakeLayer(rr))
@@ -1680,7 +1680,7 @@ static bool save_image_doit(bContext *C, SpaceImage 
*sima, wmOperator *op, SaveI
                /* we need renderresult for exr and rendered multiview */
                scene = CTX_data_scene(C);
                rr = BKE_image_acquire_renderresult(scene, ima);
-               is_mono = rr ? BLI_listbase_count(&rr->views) < 2 : (ima->flag 
& IMA_IS_MULTIVIEW) == 0;
+               is_mono = rr ? BLI_listbase_count_ex(&rr->views, 2) < 2 : 
(ima->flag & IMA_IS_MULTIVIEW) == 0;
 
                /* error handling */
                if (!rr) {
diff --git a/source/blender/imbuf/intern/openexr/openexr_api.cpp 
b/source/blender/imbuf/intern/openexr/openexr_api.cpp
index ad2c0f6..373661c 100644
--- a/source/blender/imbuf/intern/openexr/openexr_api.cpp
+++ b/source/blender/imbuf/intern/openexr/openexr_api.cpp
@@ -1257,7 +1257,7 @@ void IMB_exr_multiview_convert(void *handle, void *base,
        }
        
        /* there is one float/pass per layer (layer here is a view) */
-       BLI_assert(BLI_listbase_count(&data->layers) == 1);
+       BLI_assert(BLI_listbase_count_ex(&data->layers, 2) == 1);
        lay = (ExrLayer *)data->layers.first;
        for (pass = (ExrPass *)lay->passes.first; pass; pass = pass->next) {
                if (STREQ(pass->chan_id, "RGB") || STREQ(pass->chan_id, 
"RGBA")) {
diff --git a/source/blender/makesrna/intern/rna_nodetree.c 
b/source/blender/makesrna/intern/rna_nodetree.c
index 21d98e1..df97ee4 100644
--- a/source/blender/makesrna/intern/rna_nodetree.c
+++ b/source/blender/makesrna/intern/rna_nodetree.c
@@ -2622,8 +2622,7 @@ static int rna_Node_image_has_views_get(PointerRNA *ptr)
 
        if (!ima || !(ima->rr)) return 0;
 
-       views = BLI_listbase_count(&ima->rr->views);
-       return views > 1;
+       return BLI_listbase_count_ex(&ima->rr->views, 2) > 1;
 }
 
 #if 0 //XXX MV we may not need that, I don't know yet
diff --git a/source/blender/nodes/composite/nodes/node_composite_switchview.c 
b/source/blender/nodes/composite/nodes/node_composite_switchview.c
index 4c0f5fb..eefb081 100644
--- a/source/blender/nodes/composite/nodes/node_composite_switchview.c
+++ b/source/blender/nodes/composite/nodes/node_composite_switchview.c
@@ -49,7 +49,7 @@ static void cmp_node_switch_view_sanitycheck(bNodeTree 
*ntree, bNode *node)
 {
        bNodeSocket *sock;
 
-       if (BLI_listbase_count(&node->inputs) > 0)
+       if (BLI_listbase_count_ex(&node->inputs, 1) > 0)
                return;
 
        sock = ntreeCompositSwitchViewAddSocket(ntree, node, "No View");
diff --git a/source/blender/render/intern/source/pipeline.c 
b/source/blender/render/intern/source/pipeline.c
index fcfa3c3..af25ad2 100644
--- a/source/blender/render/intern/source/pipeline.c
+++ b/source/blender/render/intern/source/pipeline.c
@@ -3037,7 +3037,7 @@ bool RE_WriteRenderViewsImage(ReportList *reports, 
RenderResult *rr, Scene *scen
        if (!rr)
                return false;
 
-       is_mono = BLI_listbase_count(&rr->views) < 2;
+       is_mono = BLI_listbase_count_ex(&rr->views, 2) < 2;
 
        if (ELEM(rd->im_format.imtype, R_IMF_IMTYPE_OPENEXR, 
R_IMF_IMTYPE_MULTILAYER) &&
            rd->im_format.views_format == R_IMF_VIEWS_MULTIVIEW)
@@ -3185,7 +3185,7 @@ bool RE_WriteRenderViewsMovie(ReportList *reports, 
RenderResult *rr, Scene *scen
        if (!rr)
                return false;
 
-       is_mono = BLI_listbase_count(&rr->views) < 2;
+       is_mono = BLI_listbase_count_ex(&rr->views, 2) < 2;
 
        if (is_mono || (scene->r.im_format.views_format == 
R_IMF_VIEWS_INDIVIDUAL)) {
                size_t view_id;
@@ -3709,8 +3709,7 @@ bool RE_WriteEnvmapResult(struct ReportList *reports, 
Scene *scene, EnvMap *env,
 /* used in the interface to decide whether to show layers */
 int RE_layers_have_name(struct RenderResult *rr)
 {
-       switch (BLI_listbase_count(&rr->layers))
-       {
+       switch (BLI_listbase_count_ex(&rr->layers, 2)) {
                case 0:
                        return false;
                        break;
diff --git a/source/blender/render/intern/source/render_result.c 
b/source/blender/render/intern/source/render_result.c
index 2a39ce8..a0a06b1 100644
--- a/source/blender/render/intern/source/render_result.c
+++ b/source/blender/render/intern/source/render_result.c
@@ -929,7 +929,7 @@ void render_result_views_new(RenderResult *rr, RenderData 
*rd)
        }
 
        /* we always need at least one view */
-       if (BLI_listbase_count(&rr->views) == 0) {
+       if (BLI_listbase_count_ex(&rr->views, 1) == 0) {
                rv = MEM_callocN(sizeof(RenderView), "new render view");
                BLI_addtail(&rr->views, rv);
        }

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to