int parse_arguments (int argc, char *argv[], pixman_transform_t *t, pixman_op_t *op, pixman_format_code_t *src_format, pixman_format_code_t *mask_format, pixman_format_code_t *dest_format) { if (!parse_fixed_argument (*argv, &t->matrix[0][0])) return 0; if (*++argv == NULL) return 1; if (!parse_fixed_argument (*argv, &t->matrix[0][1])) return 0; if (*++argv == NULL) return 1; if (!parse_fixed_argument (*argv, &t->matrix[1][0])) return 0; if (*++argv == NULL) return 1; if (!parse_fixed_argument (*argv, &t->matrix[1][1])) return 0; if (*++argv == NULL) return 1; *op = operator_from_string (*argv); if (*op == PIXMAN_OP_NONE) return 0; if (*++argv == NULL) return 1; *src_format = format_from_string (*argv); if (*src_format == PIXMAN_null) return 0; ++argv; if (argv[0] && argv[1]) { *mask_format = format_from_string (*argv); if (*mask_format == PIXMAN_null) return 0; ++argv; } if (*argv) { *dest_format = format_from_string (*argv); if (*dest_format == PIXMAN_null) return 0; } return 1; }
/** Export HARP product to a file. * \ingroup harp_product * Export product to an HDF4, HDF5, or netCDF file that complies to the HARP Data Format. * \param filename Path to the file to which the product is to be exported. * \param export_format Either "HDF4", "HDF5", or "netCDF". * \param product Product that should be exported to file. * \return * \arg \c 0, Success. * \arg \c -1, Error occurred (check #harp_errno). */ LIBHARP_API int harp_export(const char *filename, const char *export_format, const harp_product *product) { file_format format; format = format_from_string(export_format); if (format == format_unknown) { harp_set_error(HARP_ERROR_INVALID_ARGUMENT, "unsupported export format '%s'", export_format); return -1; } switch (format) { case format_hdf4: #ifdef HAVE_HDF4 return harp_export_hdf4(filename, product); #else coda_set_error(HARP_ERROR_NO_HDF4_SUPPORT, NULL); return -1; #endif case format_hdf5: #ifdef HAVE_HDF5 return harp_export_hdf5(filename, product); #else coda_set_error(HARP_ERROR_NO_HDF5_SUPPORT, NULL); return -1; #endif case format_netcdf: return harp_export_netcdf(filename, product); default: assert(0); exit(1); } return 0; }