Index: trunk/ppMerge/src/ppMergeArguments.c
===================================================================
--- trunk/ppMerge/src/ppMergeArguments.c	(revision 21139)
+++ trunk/ppMerge/src/ppMergeArguments.c	(revision 21183)
@@ -94,6 +94,6 @@
         } \
     } \
-    psMaskType mask = pmConfigMask(str, config); \
-    psMetadataAddU8(config->arguments, PS_LIST_TAIL, RECIPENAME, 0, NULL, mask); \
+    psImageMaskType mask = pmConfigMask(str, config); \
+    psMetadataAddImageMask(config->arguments, PS_LIST_TAIL, RECIPENAME, 0, NULL, mask); \
 }
 
Index: trunk/ppMerge/src/ppMergeLoop.c
===================================================================
--- trunk/ppMerge/src/ppMergeLoop.c	(revision 21139)
+++ trunk/ppMerge/src/ppMergeLoop.c	(revision 21183)
@@ -38,6 +38,6 @@
 
     // set the mask and mark bit values based on the named masks
-    psMaskType maskVal;
-    psMaskType markVal;
+    psImageMaskType maskVal;
+    psImageMaskType markVal;
     if (!pmConfigMaskSetBits (&maskVal, &markVal, config)) {
 	psError (PS_ERR_UNKNOWN, true, "Unable to define the mask bit values");
Index: trunk/ppMerge/src/ppMergeLoop_Threaded.c
===================================================================
--- trunk/ppMerge/src/ppMergeLoop_Threaded.c	(revision 21139)
+++ trunk/ppMerge/src/ppMergeLoop_Threaded.c	(revision 21183)
@@ -54,6 +54,6 @@
 
     // set the mask and mark bit values based on the named masks
-    psMaskType maskVal;
-    psMaskType markVal;
+    psImageMaskType maskVal;
+    psImageMaskType markVal;
     if (!pmConfigMaskSetBits (&maskVal, &markVal, config)) {
         psError (PS_ERR_UNKNOWN, true, "Unable to define the mask bit values");
@@ -257,5 +257,5 @@
                       psArrayAdd(job->args, 1, psScalarAlloc(iter, PS_TYPE_S32));
                       psArrayAdd(job->args, 1, psScalarAlloc(rej, PS_TYPE_F32));
-                      psArrayAdd(job->args, 1, psScalarAlloc(maskVal, PS_TYPE_U8));
+                      psArrayAdd(job->args, 1, psScalarAlloc(maskVal, PS_TYPE_IMAGE_MASK));
 
                       // call: pmDarkCombine(outCell, fileGroup->readouts, iter, rej, maskVal);
@@ -276,5 +276,5 @@
                       psArrayAdd(job->args, 1, psScalarAlloc(iter, PS_TYPE_S32));
                       psArrayAdd(job->args, 1, psScalarAlloc(rej, PS_TYPE_F32));
-                      psArrayAdd(job->args, 1, psScalarAlloc(maskVal, PS_TYPE_U8));
+                      psArrayAdd(job->args, 1, psScalarAlloc(maskVal, PS_TYPE_IMAGE_MASK));
 
                       // call: pmShutterCorrectionGenerate(outRO, pattern, fileGroup->readouts, shutterRef,
Index: trunk/ppMerge/src/ppMergeMask.c
===================================================================
--- trunk/ppMerge/src/ppMergeMask.c	(revision 21139)
+++ trunk/ppMerge/src/ppMergeMask.c	(revision 21183)
@@ -26,6 +26,6 @@
     float smoothScale = psMetadataLookupF32(&mdok, config->arguments, "MASK.SMOOTH.SCALE"); // Radius to grow mask
 
-    psMaskType markVal;
-    psMaskType maskValRaw;
+    psImageMaskType markVal;
+    psImageMaskType maskValRaw;
     if (!pmConfigMaskSetBits (&maskValRaw, &markVal, config)) {
 	psError (PS_ERR_UNKNOWN, true, "Unable to define the mask bit values");
@@ -34,5 +34,5 @@
 
     char *maskOutName = psMetadataLookupStr (&mdok, config->arguments, "MASK.SET.VALUE");
-    psMaskType maskValOut = pmConfigMaskGet (maskOutName, config);
+    psImageMaskType maskValOut = pmConfigMaskGet (maskOutName, config);
     if (!maskValOut) {
 	psError (PS_ERR_UNKNOWN, true, "Undefined output mask bit value");
@@ -137,6 +137,6 @@
                 int x = pixel % numCols;
                 int y = pixel / numCols;
-                if (mask && (mask->data.PS_TYPE_MASK_DATA[y][x] & maskValRaw)) continue;
-		if (outMask && (outMask->data.PS_TYPE_MASK_DATA[y][x] & maskValOut)) continue;
+                if (mask && (mask->data.PS_TYPE_IMAGE_MASK_DATA[y][x] & maskValRaw)) continue;
+		if (outMask && (outMask->data.PS_TYPE_IMAGE_MASK_DATA[y][x] & maskValOut)) continue;
 		if (!isfinite(image->data.F32[y][x])) continue;
 
Index: trunk/ppMerge/src/ppMergeScaleZero.c
===================================================================
--- trunk/ppMerge/src/ppMergeScaleZero.c	(revision 21139)
+++ trunk/ppMerge/src/ppMergeScaleZero.c	(revision 21183)
@@ -80,5 +80,5 @@
                 pmReadout *readout = cell->readouts->data[0]; // Readout of interest
 
-                psMaskType maskVal = pmConfigMaskGet("MASK.VALUE", config); // Value to mask
+                psImageMaskType maskVal = pmConfigMaskGet("MASK.VALUE", config); // Value to mask
 
                 switch (type) {
Index: trunk/ppMerge/src/ppMergeSetThreads.c
===================================================================
--- trunk/ppMerge/src/ppMergeSetThreads.c	(revision 21139)
+++ trunk/ppMerge/src/ppMergeSetThreads.c	(revision 21183)
@@ -29,5 +29,5 @@
     psScalar *maskVal           = job->args->data[4];
 
-    bool status = pmDarkCombine(outCell, fileGroup->readouts, iter->data.S32, rej->data.F32, maskVal->data.U8);
+    bool status = pmDarkCombine(outCell, fileGroup->readouts, iter->data.S32, rej->data.F32, maskVal->data.PS_TYPE_IMAGE_MASK_DATA);
 
     // after we are done, tell the I/O system that this file group is done
@@ -49,5 +49,5 @@
     psScalar *maskVal             = job->args->data[7];
 
-    bool status = pmShutterCorrectionGenerate(output, pattern, fileGroup->readouts, shutterRef->data.F32, data, iter->data.S32, rej->data.F32, maskVal->data.U8);
+    bool status = pmShutterCorrectionGenerate(output, pattern, fileGroup->readouts, shutterRef->data.F32, data, iter->data.S32, rej->data.F32, maskVal->data.PS_TYPE_IMAGE_MASK_DATA);
 
     // after we are done, tell the I/O system that this file group is done
Index: trunk/ppMerge/src/ppMergeThreadLauncher.c
===================================================================
--- trunk/ppMerge/src/ppMergeThreadLauncher.c	(revision 21139)
+++ trunk/ppMerge/src/ppMergeThreadLauncher.c	(revision 21183)
@@ -60,5 +60,5 @@
 	    psScalar *maskVal     	= job->args->data[6];
 
-	    bool status = pmDarkCombine(outCell, fileGroup->readouts, darkOrdinates, darkNorm, iter->data.S32, rej->data.F32, maskVal->data.U8);
+	    bool status = pmDarkCombine(outCell, fileGroup->readouts, darkOrdinates, darkNorm, iter->data.S32, rej->data.F32, maskVal->data.PS_TYPE_IMAGE_MASK_DATA);
 	    if (!status) {
 		self->fault = true;
@@ -82,5 +82,5 @@
 	    psScalar *maskVal     	  = job->args->data[6];
 
-	    bool status = pmShutterCorrectionGenerate(output, NULL, fileGroup->readouts, shutterRef->data.F32, data, iter->data.S32, rej->data.F32, maskVal->data.U8);
+	    bool status = pmShutterCorrectionGenerate(output, NULL, fileGroup->readouts, shutterRef->data.F32, data, iter->data.S32, rej->data.F32, maskVal->data.PS_TYPE_IMAGE_MASK_DATA);
 	    if (!status) {
 		self->fault = true;
