+#include <stdio.h>
+#include <stdlib.h>
+#include <time.h>
+
+#include "arragygen.h"
+
+// initialization function
+void arraygen_init(DOLProcess *p) {
+ p->local->index = 0;
+ srand((unsigned) time(NULL));
+ //p->local->len = LENGTH;
+}
+
+int arraygen_fire(DOLProcess *p) {
+
+
+ /* generate a random integer array of length L */
+ //int num = rand() % 1000;
+
+ int i;
+ int len = LENGTH;
+ int * array;
+ array = (int *) malloc(sizeof(int)*len);
+
+ for(i=0;i<len;i++)
+ array[i] = rand() % (len*2);
+
+#if DEBUG
+ for(i=0;i<LENGTH;i++)
+ printf("%d ", array[i]);
+ printf("\n");
+ printf("generated\n");
+#endif
+
+ DOL_write((void*)PORT_OUT1, &(len), sizeof(int), p);
+ DOL_write((void*)PORT_OUT2, array, sizeof(int)*length, p);
+
+ free(array);
+ DOL_detach(p);
+ return -1;
+
+}