summaryrefslogtreecommitdiff
path: root/src/cairo-types-private.h
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2008-11-03 11:01:22 +0000
committerChris Wilson <chris@chris-wilson.co.uk>2008-11-03 11:24:12 +0000
commit8fc3d0ffebea5622332327cdef9222486cc85581 (patch)
tree0dbf5ea80aff6a100d2f28907c6645afbdf426ae /src/cairo-types-private.h
parentafef83a1fae028b45cefd6b4698e7b32ad4d6fc7 (diff)
[mime-data] Allow embedding of arbitrary mime-types.
Use the surface user-data array allow to store an arbitrary set of alternate image representations keyed by an interned string (which ensures that it has a unique key in the user-visible namespace). Update the API to mirror that of cairo_surface_set_user_data() [i.e. return a status indicator] and switch internal users of the mime-data to the public functions.
Diffstat (limited to 'src/cairo-types-private.h')
-rw-r--r--src/cairo-types-private.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/cairo-types-private.h b/src/cairo-types-private.h
index 12e1a20e..8bcbf9aa 100644
--- a/src/cairo-types-private.h
+++ b/src/cairo-types-private.h
@@ -52,6 +52,7 @@ typedef struct _cairo_gstate cairo_gstate_t;
typedef struct _cairo_hash_entry cairo_hash_entry_t;
typedef struct _cairo_hash_table cairo_hash_table_t;
typedef struct _cairo_image_surface cairo_image_surface_t;
+typedef struct _cairo_mime_data cairo_mime_data_t;
typedef struct _cairo_output_stream cairo_output_stream_t;
typedef struct _cairo_paginated_surface_backend cairo_paginated_surface_backend_t;
typedef struct _cairo_path_fixed cairo_path_fixed_t;
@@ -342,4 +343,10 @@ typedef enum _cairo_image_transparency {
CAIRO_IMAGE_UNKNOWN
} cairo_image_transparency_t;
+struct _cairo_mime_data {
+ unsigned char *data;
+ unsigned int length;
+ cairo_destroy_func_t destroy;
+};
+
#endif /* CAIRO_TYPES_PRIVATE_H */