/* Information about a single shot or still */
typedef struct {
  char *volume;
  char *type;
  char *refer;
} Image;

/* Information which defines a projector */
typedef struct {
  int       number;
  Window    screen;
  int       x;
  int       y;
  int       width;
  int       height;
} Projector;

/* Definition of things to do at a single time */
/* Simultaneous actions can be grouped, so optimization might be performed */
typedef struct {
  timeval   attime;
  int       num_todo;
  int       *projector;
  int       *image;
}

/* Information about how everything fits together */
typedef struct {
  int       num_changes;
  Change    *changes;
} Program;
