Index: /branches/eam_branch_20081230/psLib/src/sys/psType.h
===================================================================
--- /branches/eam_branch_20081230/psLib/src/sys/psType.h	(revision 21076)
+++ /branches/eam_branch_20081230/psLib/src/sys/psType.h	(revision 21077)
@@ -10,6 +10,6 @@
 *  @author Ross Harman, MHPCC
 *
-*  @version $Revision: 1.62.42.1 $ $Name: not supported by cvs2svn $
-*  @date $Date: 2008-12-30 20:40:00 $
+*  @version $Revision: 1.62.42.2 $ $Name: not supported by cvs2svn $
+*  @date $Date: 2009-01-02 05:10:39 $
 *
 *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
@@ -146,4 +146,10 @@
 #define PS_TYPE_MASK_NAME "psU8"       /**< the data type for mask as a string */
 typedef psU8 psMaskType;               ///< the C datatype for a mask image
+#define PS_NOT_MASK(A)(UINT8_MAX-(A))
+
+// alternate versions if needed
+// #define PS_NOT_MASK(A)(UINT16_MAX-(A))
+// #define PS_NOT_MASK(A)(UINT32_MAX-(A)) 
+// #define PS_NOT_MASK(A)(UINT64_MAX-(A))
 
 // macros to abstract the vector mask type : these values must be consistent 
@@ -152,4 +158,5 @@
 #define PS_TYPE_VECTOR_MASK_NAME "psU8"       /**< the data type for mask as a string */
 typedef psU8 psVectorMaskType;			  ///< the C datatype for a mask image
+#define PS_NOT_VECTOR_MASK(A)(UINT8_MAX-(A))
 
 // macros to abstract the image mask type : these values must be consistent 
@@ -158,4 +165,5 @@
 #define PS_TYPE_IMAGE_MASK_NAME "psU8"       /**< the data type for mask as a string */
 typedef psU8 psImageMaskType;               ///< the C datatype for a mask image
+#define PS_NOT_IMAGE_MASK(A)(UINT8_MAX-(A))
 
 #define PS_MIN_S8        INT8_MIN      /**< minimum valid psS8 value */
