Got exportPyramid working again.
1.1 --- a/src/enblend.h Thu Jun 11 15:20:52 2009 +0000
1.2 +++ b/src/enblend.h Sun Jun 28 01:57:30 2009 -0700
1.3 @@ -337,7 +337,7 @@
1.4 MaskPyramidIntegerBits, MaskPyramidFractionBits,
1.5 SKIPSMMaskPixelType>(numLevels, wraparoundForBlend,
1.6 roiBB_uBB.apply(srcImageRange(*mask)));
1.7 - //exportPyramid(maskGP, "mask");
1.8 + //exportPyramid<SKIPSMMaskPixelType, MaskPyramidType>(maskGP, "mask");
1.9 // mem usage before = MaskType*ubb + 2*inputUnion*ImageValueType + 2*inputUnion*AlphaValueType
1.10 // mem usage xsection = 3 * roiBB.width * MaskPyramidType
1.11 // mem usage after = MaskType*ubb + 2*inputUnion*ImageValueType + 2*inputUnion*AlphaValueType + (4/3)*roiBB*MaskPyramidType
1.12 @@ -448,7 +448,7 @@
1.13 cout << "--------------------------------------------------------------------------------" << endl;
1.14 }
1.15 #endif
1.16 - //exportPyramid(blackLP, "enblend_black_lp");
1.17 + //exportPyramid<SKIPSMImagePixelType, ImagePyramidType>(blackLP, "enblend_black_lp");
1.18
1.19 // Peak memory xsection is here!
1.20 // mem xsection = 4 * roiBB.width() * SKIPSMImagePixelType
1.21 @@ -494,7 +494,7 @@
1.22 #endif
1.23
1.24 // delete mask pyramid
1.25 - //exportPyramid(maskGP, "enblend_mask_gp");
1.26 + //exportPyramid<SKIPSMMaskPixelType, MaskPyramidType>(maskGP, "enblend_mask_gp");
1.27 for (unsigned int i = 0; i < maskGP->size(); i++) {
1.28 delete (*maskGP)[i];
1.29 }
1.30 @@ -503,7 +503,7 @@
1.31 // mem usage after = inputUnion*ImageValueType + inputUnion*AlphaValueType + 2*(4/3)*roiBB*ImagePyramidType
1.32
1.33 // delete white pyramid
1.34 - //exportPyramid(whiteLP, "enblend_white_lp");
1.35 + //exportPyramid<SKIPSMImagePixelType, ImagePyramidType>(whiteLP, "enblend_white_lp");
1.36 for (unsigned int i = 0; i < whiteLP->size(); i++) {
1.37 delete (*whiteLP)[i];
1.38 }
1.39 @@ -511,7 +511,7 @@
1.40
1.41 // mem usage after = inputUnion*ImageValueType + inputUnion*AlphaValueType + (4/3)*roiBB*ImagePyramidType
1.42
1.43 - //exportPyramid(blackLP, "enblend_blend_lp");
1.44 + //exportPyramid<SKIPSMImagePixelType, ImagePyramidType>(blackLP, "enblend_blend_lp");
1.45 // collapse black pyramid
1.46 collapsePyramid<SKIPSMImagePixelType>(wraparoundForBlend, blackLP);
1.47 #ifdef ENBLEND_CACHE_IMAGES
2.1 --- a/src/pyramid.h Thu Jun 11 15:20:52 2009 +0000
2.2 +++ b/src/pyramid.h Sun Jun 28 01:57:30 2009 -0700
2.3 @@ -1729,7 +1729,7 @@
2.4 };
2.5
2.6 // Export a scalar pyramid as a set of UINT16 tiff files.
2.7 -template <typename PyramidImageType>
2.8 +template <typename SKIPSMImagePyramidType, typename PyramidImageType>
2.9 void exportPyramid(vector<PyramidImageType*> *v, const char *prefix, VigraTrueType) {
2.10 typedef typename PyramidImageType::value_type PyramidValueType;
2.11
2.12 @@ -1737,7 +1737,7 @@
2.13 // // Clear all levels except last.
2.14 // initImage(destImageRange(*((*v)[i])), NumericTraits<PyramidValueType>::zero());
2.15 //}
2.16 - //collapsePyramid(false, v);
2.17 + //collapsePyramid<SKIPSMImagePyramidType, PyramidImageType>(false, v);
2.18
2.19 for (unsigned int i = 0; i < v->size(); i++) {
2.20 char filenameBuf[512];
2.21 @@ -1757,7 +1757,7 @@
2.22 };
2.23
2.24 // Export a vector pyramid as a set of UINT16 tiff files.
2.25 -template <typename PyramidImageType>
2.26 +template <typename SKIPSMImagePyramidType, typename PyramidImageType>
2.27 void exportPyramid(vector<PyramidImageType*> *v, const char *prefix, VigraFalseType) {
2.28 typedef typename PyramidImageType::value_type PyramidVectorType;
2.29 typedef typename PyramidVectorType::value_type PyramidValueType;
2.30 @@ -1766,7 +1766,7 @@
2.31 // // Clear all levels except last.
2.32 // initImage(destImageRange(*((*v)[i])), NumericTraits<PyramidValueType>::zero());
2.33 //}
2.34 - //collapsePyramid(false, v);
2.35 + //collapsePyramid<SKIPSMImagePyramidType, PyramidImageType>(false, v);
2.36
2.37 for (unsigned int i = 0; i < v->size(); i++) {
2.38 char filenameBuf[512];
2.39 @@ -1786,10 +1786,10 @@
2.40 };
2.41
2.42 // Export a pyramid as a set of UINT16 tiff files.
2.43 -template <typename PyramidImageType>
2.44 +template <typename SKIPSMImagePyramidType, typename PyramidImageType>
2.45 void exportPyramid(vector<PyramidImageType*> *v, const char *prefix) {
2.46 typedef typename NumericTraits<typename PyramidImageType::value_type>::isScalar pyramid_is_scalar;
2.47 - exportPyramid(v, prefix, pyramid_is_scalar());
2.48 + exportPyramid<SKIPSMImagePyramidType, PyramidImageType>(v, prefix, pyramid_is_scalar());
2.49 };
2.50
2.51 } // namespace enblend