DEFINE_DEVICE_TYPE:  MovieCamera

 DEFINE_THREAD: start_up
  {
   /* Use thread with larger stack-size. */
   TRIGGER_THREAD_STCKSZ( movie_camera, 0.0, 0, 262144 );
  }
 END_DEFINE_THREAD.


 DEFINE_THREAD: movie_camera
  {
   void snap_image( char *image_file_name );
   int j, movie_frame=0;
   char *filename, *wrd;

   filename = (char *)malloc(100);
   wrd = (char *)malloc(50);
   sprintf(filename,"frame_");
   while (1)
    {
     sprintf(wrd,"%5d.ppm", movie_frame++ );
     j = 0;  while (wrd[j]==' ') wrd[j++] = '0';
     filename[6] = '\0';
     strcat(filename,wrd);
     snap_image( filename );
     DELAY( 1.0 );
    }
  }
 END_DEFINE_THREAD.

END_DEFINE_DEVICE_TYPE.
