1 #ifndef GSF_BLOB_H 2 #define GSF_BLOB_H 3 4 #include <gsf/gsf-fwd.h> 5 6 G_BEGIN_DECLS 7 8 #define GSF_BLOB_TYPE (gsf_blob_get_type ()) 9 #define GSF_BLOB(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GSF_BLOB_TYPE, GsfBlob)) 10 #define GSF_BLOB_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GSF_BLOB_TYPE, GsfBlobClass)) 11 #define GSF_IS_BLOB(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GSF_BLOB_TYPE)) 12 #define GSF_IS_BLOB_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GSF_BLOB_TYPE)) 13 #define GSF_BLOB_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GSF_BLOB_TYPE, GsfBlobClass)) 14 15 /* Deprecated old typo */ 16 #define GSF_TYPE_BLOB (gsf_blob_get_type ()) 17 18 typedef struct _GsfBlobClass GsfBlobClass; 19 typedef struct _GsfBlobPrivate GsfBlobPrivate; 20 21 struct _GsfBlob { 22 GObject object; 23 GsfBlobPrivate *priv; 24 }; 25 26 GType gsf_blob_get_type (void); 27 /* void gsf_blob_register_type (GTypeModule *module); glib dynamic types are not thread safe */ 28 29 GsfBlob *gsf_blob_new (gsize size, 30 gconstpointer data_to_copy, 31 GError **error); 32 33 gsize gsf_blob_get_size (GsfBlob const *blob); 34 35 gconstpointer gsf_blob_peek_data (GsfBlob const *blob); 36 37 G_END_DECLS 38 39 #endif 40