Index: trunk/ppSim/src/ppSimSequence.c
===================================================================
--- trunk/ppSim/src/ppSimSequence.c	(revision 16371)
+++ trunk/ppSim/src/ppSimSequence.c	(revision 16371)
@@ -0,0 +1,45 @@
+# include "ppSim.h"
+
+int main(int argc, char *argv[])
+{
+    psLibInit(NULL);
+
+    if (argc != 2) {
+      fprintf (stderr, "USAGE: ppSimSequence (seq.config)\n");
+      fprintf (stderr, "generates a set of simulated data defined by the sequence file\n");
+      exit (2);
+    }
+
+    // load the sequence description
+    psMetadata *config = psMetadataConfigRead (NULL, &nFail, argv[1], false);
+    
+    psMetadataItem *item = psMetadataLookup (config, "SEQUENCE");
+    if (item == NULL) {
+      psLogMsg ("ppSimSequence", PS_LOG_WARN, "missing SEQUENCE description");
+      exit (1);
+    }
+
+    if (item->type == PS_DATA_METADATA) {
+      sequences = psArrayAlloc(1);
+      sequences->data[0] = psMemIncrRefCounter (item->data.V);
+    } else {
+      if (item->type != PS_DATA_METADATA_MULTI)  {
+	psLogMsg ("ppSimSequence", PS_LOG_WARN, "SEQUENCE is not MULTI or METADATA");
+	exit (1);
+      }
+      sequences = psListToArray (item->data.list);
+    }
+
+    for (int i = 0; i < sequences->n; i++) {
+
+      // a OBJECT sequence is described by a center position and a set of offsets at each
+      // offset, we perform a set of dithers for each pointing, we have a set of filters
+      // and exposure times
+
+      // a non-OBJECT sequence consists of a number of a given type
+
+      // create files with ppSim:
+      // ppSim -camera CAMERA -type TYPE filename
+      
+      // inject --camera 
+    }
