X-Git-Url: http://research.m1stereo.tv/gitweb?a=blobdiff_plain;f=src%2Fframework%2Fmlt_types.h;h=50baba6d2dfcc7e3bda0c2d8287dd00250612e33;hb=bf3264b9e340ba5c11cbf59835a8af3db94e0cc2;hp=284c35bc5ca8d0b0587e1d11f45c0caad191adba;hpb=2a800ec4c840132c7a629b764b673dce09771637;p=melted diff --git a/src/framework/mlt_types.h b/src/framework/mlt_types.h index 284c35b..50baba6 100644 --- a/src/framework/mlt_types.h +++ b/src/framework/mlt_types.h @@ -3,24 +3,28 @@ * Copyright (C) 2003-2004 Ushodaya Enterprises Limited * Author: Charles Yates * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU 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 free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. * - * This program is distributed in the hope that it will be useful, + * 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 General Public License for more details. + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * You should have received a copy of the GNU Lesser 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 _MLT_TYPES_H_ #define _MLT_TYPES_H_ +#ifndef GCC_VERSION +#define GCC_VERSION (__GNUC__ * 10000 + __GNUC_MINOR__ * 100 + __GNUC_PATCHLEVEL__) +#endif + #include #include "mlt_pool.h" @@ -31,7 +35,8 @@ typedef enum mlt_image_rgb24, mlt_image_rgb24a, mlt_image_yuv422, - mlt_image_yuv420p + mlt_image_yuv420p, + mlt_image_opengl } mlt_image_format; @@ -50,12 +55,34 @@ typedef enum } mlt_whence; +typedef enum +{ + invalid_type, + unknown_type, + producer_type, + playlist_type, + tractor_type, + multitrack_type, + filter_type, + transition_type, + consumer_type, + field_type +} +mlt_service_type; + +/* I don't want to break anyone's applications without warning. -Zach */ +#undef DOUBLE_MLT_POSITION +#ifdef DOUBLE_MLT_POSITION +typedef double mlt_position; +#else typedef int32_t mlt_position; +#endif + typedef struct mlt_frame_s *mlt_frame, **mlt_frame_ptr; typedef struct mlt_properties_s *mlt_properties; +typedef struct mlt_event_struct *mlt_event; typedef struct mlt_service_s *mlt_service; typedef struct mlt_producer_s *mlt_producer; -typedef struct mlt_manager_s *mlt_manager; typedef struct mlt_playlist_s *mlt_playlist; typedef struct mlt_multitrack_s *mlt_multitrack; typedef struct mlt_filter_s *mlt_filter; @@ -63,7 +90,10 @@ typedef struct mlt_transition_s *mlt_transition; typedef struct mlt_tractor_s *mlt_tractor; typedef struct mlt_field_s *mlt_field; typedef struct mlt_consumer_s *mlt_consumer; +typedef struct mlt_parser_s *mlt_parser; typedef struct mlt_deque_s *mlt_deque; +typedef struct mlt_geometry_s *mlt_geometry; +typedef struct mlt_geometry_item_s *mlt_geometry_item; typedef void ( *mlt_destructor )( void * ); typedef char *( *mlt_serialiser )( void *, int length );