MLT 6.22.1
mlt_property.h
Go to the documentation of this file.
1
23#ifndef MLT_PROPERTY_H
24#define MLT_PROPERTY_H
25
26#include "mlt_types.h"
27
28#if defined(__FreeBSD__)
29/* This header has existed since 1994 and defines __FreeBSD_version below. */
30#include <sys/param.h>
31#endif
32
33#if (defined(__GLIBC__) && !defined(__APPLE__)) || defined(HAVE_LOCALE_H)
34# include <locale.h>
35#elif defined(__APPLE__) || (defined(__FreeBSD_version) && __FreeBSD_version >= 900506)
36# include <xlocale.h>
37#elif defined(__OpenBSD__)
38/* XXX matches __nop_locale glue in libc++ */
39typedef void* locale_t;
40#else
41typedef char* locale_t;
42#endif
43
45extern void mlt_property_clear( mlt_property self );
47extern int mlt_property_set_int( mlt_property self, int value );
48extern int mlt_property_set_double( mlt_property self, double value );
50extern int mlt_property_set_int64( mlt_property self, int64_t value );
51extern int mlt_property_set_string( mlt_property self, const char *value );
52extern int mlt_property_set_data( mlt_property self, void *value, int length, mlt_destructor destructor, mlt_serialiser serialiser );
53extern int mlt_property_get_int( mlt_property self, double fps, locale_t );
54extern double mlt_property_get_double( mlt_property self, double fps, locale_t );
56extern int64_t mlt_property_get_int64( mlt_property self );
61extern void *mlt_property_get_data( mlt_property self, int *length );
62extern void mlt_property_close( mlt_property self );
65
66extern int mlt_property_interpolate( mlt_property self, mlt_property points[], double progress, double fps, locale_t locale, mlt_keyframe_type interp );
67extern double mlt_property_anim_get_double( mlt_property self, double fps, locale_t locale, int position, int length );
68extern int mlt_property_anim_get_int( mlt_property self, double fps, locale_t locale, int position, int length );
69extern char* mlt_property_anim_get_string( mlt_property self, double fps, locale_t locale, int position, int length );
70extern int mlt_property_anim_set_double( mlt_property self, double value, double fps, locale_t locale, int position, int length, mlt_keyframe_type keyframe_type );
71extern int mlt_property_anim_set_int( mlt_property self, int value, double fps, locale_t locale, int position, int length, mlt_keyframe_type keyframe_type );
72extern int mlt_property_anim_set_string( mlt_property self, const char *value, double fps, locale_t locale, int position, int length );
74
77extern int mlt_property_anim_set_rect( mlt_property self, mlt_rect value, double fps, locale_t locale, int position, int length, mlt_keyframe_type keyframe_type );
78extern mlt_rect mlt_property_anim_get_rect( mlt_property self, double fps, locale_t locale, int position, int length );
79
80#endif
char * locale_t
Definition: mlt_property.h:41
Provides forward definitions of all public types.
mlt_time_format
The time string formats.
Definition: mlt_types.h:110
int32_t mlt_position
Definition: mlt_types.h:163
void(* mlt_destructor)(void *)
pointer to destructor function
Definition: mlt_types.h:212
mlt_keyframe_type
Interpolation methods for animation keyframes.
Definition: mlt_types.h:121
char *(* mlt_serialiser)(void *, int length)
pointer to serialization function
Definition: mlt_types.h:213
Property Animation class.
Definition: mlt_animation.c:49
Property class.
Definition: mlt_property.c:63
int mlt_property_set_position(mlt_property self, mlt_position value)
Set the property to a position value.
Definition: mlt_property.c:209
int mlt_property_anim_get_int(mlt_property self, double fps, locale_t locale, int position, int length)
Get the property as an integer number at a frame position.
Definition: mlt_property.c:1380
mlt_animation mlt_property_get_animation(mlt_property self)
Get an object's animation object.
Definition: mlt_property.c:1566
mlt_rect mlt_property_get_rect(mlt_property self, locale_t locale)
Get the property as a rectangle.
Definition: mlt_property.c:1634
int mlt_property_set_data(mlt_property self, void *value, int length, mlt_destructor destructor, mlt_serialiser serialiser)
Set a property to an opaque binary value.
Definition: mlt_property.c:280
char * mlt_property_get_time(mlt_property self, mlt_time_format format, double fps, locale_t locale)
Get the property as a time string.
Definition: mlt_property.c:1034
mlt_rect mlt_property_anim_get_rect(mlt_property self, double fps, locale_t locale, int position, int length)
Get a rectangle at a frame position.
Definition: mlt_property.c:1764
double mlt_property_get_double(mlt_property self, double fps, locale_t locale)
Get the property as a floating point.
Definition: mlt_property.c:572
char * mlt_property_anim_get_string(mlt_property self, double fps, locale_t locale, int position, int length)
Get the string at certain a frame position.
Definition: mlt_property.c:1416
char * mlt_property_get_string_tf(mlt_property self, mlt_time_format time_format)
Get the property as a string (with time format).
Definition: mlt_property.c:679
int mlt_property_anim_set_string(mlt_property self, const char *value, double fps, locale_t locale, int position, int length)
Set a property animation keyframe to a string.
Definition: mlt_property.c:1537
int mlt_property_get_int(mlt_property self, double fps, locale_t locale)
Get the property as an integer.
Definition: mlt_property.c:479
int mlt_property_anim_set_rect(mlt_property self, mlt_rect value, double fps, locale_t locale, int position, int length, mlt_keyframe_type keyframe_type)
Set a property animation keyframe to a rectangle.
Definition: mlt_property.c:1731
int mlt_property_anim_set_int(mlt_property self, int value, double fps, locale_t locale, int position, int length, mlt_keyframe_type keyframe_type)
Set a property animation keyframe to an integer value.
Definition: mlt_property.c:1500
int mlt_property_interpolate(mlt_property self, mlt_property p[], double progress, double fps, locale_t locale, mlt_keyframe_type interp)
Interpolate a new property value given a set of other properties.
Definition: mlt_property.c:1223
void * mlt_property_get_data(mlt_property self, int *length)
Get the binary data from a property.
Definition: mlt_property.c:867
mlt_property mlt_property_init()
Construct a property and initialize it.
Definition: mlt_property.c:90
char * mlt_property_get_string_l(mlt_property self, locale_t locale)
Get the property as a string (with locale).
Definition: mlt_property.c:848
int mlt_property_set_int(mlt_property self, int value)
Set the property to an integer value.
Definition: mlt_property.c:172
double mlt_property_anim_get_double(mlt_property self, double fps, locale_t locale, int position, int length)
Get the real number at a frame position.
Definition: mlt_property.c:1344
char * mlt_property_get_string_l_tf(mlt_property self, locale_t locale, mlt_time_format time_format)
Get the property as a string (with locale and time format).
Definition: mlt_property.c:762
void mlt_property_pass(mlt_property self, mlt_property that)
Copy a property.
Definition: mlt_property.c:902
char * mlt_property_get_string(mlt_property self)
Get the property as a string.
Definition: mlt_property.c:744
int mlt_property_set_int64(mlt_property self, int64_t value)
Set the property to a 64-bit integer value.
Definition: mlt_property.c:255
void mlt_property_clear(mlt_property self)
Clear (0/null) a property.
Definition: mlt_property.c:138
int64_t mlt_property_get_int64(mlt_property self)
Get the property as a signed integer.
Definition: mlt_property.c:647
mlt_position mlt_property_get_position(mlt_property self, double fps, locale_t locale)
Get the property as a position.
Definition: mlt_property.c:602
int mlt_property_set_double(mlt_property self, double value)
Set the property to a floating point value.
Definition: mlt_property.c:190
int mlt_property_is_clear(mlt_property self)
Check if a property is cleared.
Definition: mlt_property.c:152
int mlt_property_set_rect(mlt_property self, mlt_rect value)
Set a property to a mlt_rect rectangle.
Definition: mlt_property.c:1609
int mlt_property_anim_set_double(mlt_property self, double value, double fps, locale_t locale, int position, int length, mlt_keyframe_type keyframe_type)
Set a property animation keyframe to a real number.
Definition: mlt_property.c:1465
int mlt_property_set_string(mlt_property self, const char *value)
Set the property to a string value.
Definition: mlt_property.c:229
void mlt_property_close(mlt_property self)
Destroy a property and free all related resources.
Definition: mlt_property.c:886
A rectangle type with coordinates, size, and opacity.
Definition: mlt_types.h:168