6 #include <libexif/exif-data.h>
9 test_exif_data (ExifData *d)
15 fprintf (stdout, "Byte order: %s\n",
16 exif_byte_order_get_name (exif_data_get_byte_order (d)));
18 fprintf (stdout, "Parsing maker note...\n");
19 md = exif_data_get_mnote_data (d);
21 fprintf (stderr, "Could not parse maker note!\n");
26 fprintf (stdout, "Increasing ref-count...\n");
27 exif_mnote_data_ref (md);
29 fprintf (stdout, "Decreasing ref-count...\n");
30 exif_mnote_data_unref (md);
32 fprintf (stdout, "Counting entries...\n");
33 c = exif_mnote_data_count (md);
34 fprintf (stdout, "Found %i entries.\n", c);
35 for (i = 0; i < c; i++) {
36 fprintf (stdout, "Dumping entry number %i...\n", i);
37 fprintf (stdout, " Name: '%s'\n",
38 exif_mnote_data_get_name (md, i));
39 fprintf (stdout, " Title: '%s'\n",
40 exif_mnote_data_get_title (md, i));
41 fprintf (stdout, " Description: '%s'\n",
42 exif_mnote_data_get_description (md, i));
43 p = exif_mnote_data_get_value (md, i, v, sizeof (v));
44 if (p) { fprintf (stdout, " Value: '%s'\n", v); }
51 main (int argc, char **argv)
54 unsigned int buf_size;
59 fprintf (stderr, "You need to supply a filename!\n");
63 fprintf (stdout, "Loading '%s'...\n", argv[1]);
64 d = exif_data_new_from_file (argv[1]);
66 fprintf (stderr, "Could not load data from '%s'!\n", argv[1]);
69 fprintf (stdout, "Loaded '%s'.\n", argv[1]);
71 fprintf (stdout, "######### Test 1 #########\n");
72 r = test_exif_data (d);
75 exif_data_save_data (d, &buf, &buf_size);
77 d = exif_data_new_from_data (buf, buf_size);
80 fprintf (stdout, "######### Test 2 #########\n");
81 r = test_exif_data (d);
84 fprintf (stdout, "Test successful!\n");