Index: trunk/psphot/src/psphot-utils.c
===================================================================
--- trunk/psphot/src/psphot-utils.c	(revision 4630)
+++ trunk/psphot/src/psphot-utils.c	(revision 4901)
@@ -439,2 +439,26 @@
 
 # endif
+
+static void psImageDataFree (psImageData *imdata) {
+
+  if (imdata == NULL) return;
+
+  psFree (imdata->image);
+  psFree (imdata->header);
+  psFree (imdata->noise);
+  psFree (imdata->mask);
+  return;
+}
+
+psImageData *psImageDataAlloc (psImage *image, psImage *noise, psImage *mask, psMetadata *header) {
+  
+    psImageData *imdata = psAlloc(sizeof(psImageData));
+    imdata->image = image;
+    imdata->header = header;
+    imdata->noise = noise;
+    imdata->mask = mask;
+
+    p_psMemSetDeallocator(imdata, (psFreeFcn) psImageDataFree);
+    return (imdata);
+}
+  
