+ struct page_setup *ps = page_setup_parse (o);
+ spv_writer_set_page_setup (writer, ps);
+ page_setup_destroy (ps);
+
+ struct spv_driver *spv = xmalloc (sizeof *spv);
+ *spv = (struct spv_driver) {
+ .driver = {
+ .class = &spv_driver_class,
+ .name = xstrdup (fh_get_file_name (fh)),
+ .device_type = device_type,
+ },
+ .handle = fh,
+ .writer = writer,
+ };
+ return &spv->driver;