diff options
author | Wim Taymans <wim.taymans@gmail.com> | 2002-10-10 21:19:12 +0000 |
---|---|---|
committer | Wim Taymans <wim.taymans@gmail.com> | 2002-10-10 21:19:12 +0000 |
commit | 9b067365c95ee0d987a74acd10a9c9890abab5db (patch) | |
tree | cba71e4d973972f372a4819c8734ac4bd04fe4d8 /gst/smpte/gstmask.h | |
parent | 5f4fb7887107189204fa92978400f9d698a4e319 (diff) | |
download | gst-plugins-bad-9b067365c95ee0d987a74acd10a9c9890abab5db.tar.gz gst-plugins-bad-9b067365c95ee0d987a74acd10a9c9890abab5db.tar.bz2 gst-plugins-bad-9b067365c95ee0d987a74acd10a9c9890abab5db.zip |
Added the base framework for the SMPTE transitions and wipes.
Original commit message from CVS:
Added the base framework for the SMPTE transitions and wipes.
Diffstat (limited to 'gst/smpte/gstmask.h')
-rw-r--r-- | gst/smpte/gstmask.h | 73 |
1 files changed, 73 insertions, 0 deletions
diff --git a/gst/smpte/gstmask.h b/gst/smpte/gstmask.h new file mode 100644 index 00000000..f53fb99f --- /dev/null +++ b/gst/smpte/gstmask.h @@ -0,0 +1,73 @@ +/* GStreamer + * Copyright (C) <1999> Erik Walthinsen <omega@cse.ogi.edu> + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Library General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public + * License along with this library; if not, write to the + * Free Software Foundation, Inc., 59 Temple Place - Suite 330, + * Boston, MA 02111-1307, USA. + */ + + +#ifndef __GST_MASK_H__ +#define __GST_MASK_H__ + +#include <gst/gst.h> + + +typedef struct _GstMask GstMask; +typedef struct _GstMaskDefinition GstMaskDefinition; + +typedef GstMask* (*GstMaskNewFunc) (GstMaskDefinition *definition, + gint bpp, gint width, gint height); +typedef void (*GstMaskDestroyFunc) (GstMask *mask); +typedef void (*GstMaskUpdateFunc) (GstMask *mask, + GstClockTime position, + GstClockTime duration); +struct _GstMaskDefinition { + gint type; + gchar *short_name; + gchar *long_name; + GstMaskNewFunc new_func; + GstMaskDestroyFunc destroy_func; + GstMaskUpdateFunc update_func; +}; + +struct _GstMask { + gint type; + guint8 *data; + + gint width; + gint height; + gint bpp; + + GstMaskUpdateFunc update_func; + GstMaskDestroyFunc destroy_func; +}; + +void _gst_mask_init (void); +void _gst_mask_register (GstMaskDefinition *definition); + +GstMask* _gst_mask_default_new (GstMaskDefinition *definition, + gint bpp, gint width, gint height); +void _gst_mask_default_destroy (GstMask *mask); + +const GList* gst_mask_get_definitions (void); +GstMask* gst_mask_factory_new (gint type, gint bpp, gint width, gint height); +void gst_mask_destroy (GstMask *mask); + +void gst_mask_update (GstMask *mask, + GstClockTime position, + GstClockTime duration); + + +#endif /* __GST_MASK_H__ */ |