MLT 7.8.0
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 );
75
78extern 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 );
79extern mlt_rect mlt_property_anim_get_rect( mlt_property self, double fps, locale_t locale, int position, int length );
80
83
84#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:127
int32_t mlt_position
Definition: mlt_types.h:181
void(* mlt_destructor)(void *)
pointer to destructor function
Definition: mlt_types.h:233
mlt_keyframe_type
Interpolation methods for animation keyframes.
Definition: mlt_types.h:137
char *(* mlt_serialiser)(void *, int length)
pointer to serialization function
Definition: mlt_types.h:234
Property Animation class.
Definition: mlt_animation.c:49
Properties class.
Definition: mlt_properties.h:40
Property class.
Definition: mlt_property.c:64
int mlt_property_set_position(mlt_property self, mlt_position value)
Set the property to a position value.
Definition: mlt_property.c:218
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:1418
mlt_animation mlt_property_get_animation(mlt_property self)
Get an object's animation object.
Definition: mlt_property.c:1604
mlt_rect mlt_property_get_rect(mlt_property self, locale_t locale)
Get the property as a rectangle.
Definition: mlt_property.c:1672
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:289
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:1063
mlt_properties mlt_property_get_properties(mlt_property self)
Get a nested properties object.
Definition: mlt_property.c:1852
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:1802
double mlt_property_get_double(mlt_property self, double fps, locale_t locale)
Get the property as a floating point.
Definition: mlt_property.c:586
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:1454
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:708
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:1575
int mlt_property_get_int(mlt_property self, double fps, locale_t locale)
Get the property as an integer.
Definition: mlt_property.c:488
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:1769
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:1538
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:1252
void * mlt_property_get_data(mlt_property self, int *length)
Get the binary data from a property.
Definition: mlt_property.c:896
mlt_property mlt_property_init()
Construct a property and initialize it.
Definition: mlt_property.c:92
char * mlt_property_get_string_l(mlt_property self, locale_t locale)
Get the property as a string (with locale).
Definition: mlt_property.c:877
int mlt_property_set_int(mlt_property self, int value)
Set the property to an integer value.
Definition: mlt_property.c:181
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:1382
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:791
void mlt_property_pass(mlt_property self, mlt_property that)
Copy a property.
Definition: mlt_property.c:931
char * mlt_property_get_string(mlt_property self)
Get the property as a string.
Definition: mlt_property.c:773
int mlt_property_set_int64(mlt_property self, int64_t value)
Set the property to a 64-bit integer value.
Definition: mlt_property.c:264
int mlt_property_is_anim(mlt_property self)
Check if a property is animated.
Definition: mlt_property.c:1870
void mlt_property_clear(mlt_property self)
Clear (0/null) a property.
Definition: mlt_property.c:147
int64_t mlt_property_get_int64(mlt_property self)
Get the property as a signed integer.
Definition: mlt_property.c:671
mlt_position mlt_property_get_position(mlt_property self, double fps, locale_t locale)
Get the property as a position.
Definition: mlt_property.c:621
int mlt_property_set_properties(mlt_property self, mlt_properties properties)
Set a nested properties object.
Definition: mlt_property.c:1835
int mlt_property_set_double(mlt_property self, double value)
Set the property to a floating point value.
Definition: mlt_property.c:199
int mlt_property_is_clear(mlt_property self)
Check if a property is cleared.
Definition: mlt_property.c:161
int mlt_property_set_rect(mlt_property self, mlt_rect value)
Set a property to a mlt_rect rectangle.
Definition: mlt_property.c:1647
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:1503
int mlt_property_set_string(mlt_property self, const char *value)
Set the property to a string value.
Definition: mlt_property.c:238
void mlt_property_close(mlt_property self)
Destroy a property and free all related resources.
Definition: mlt_property.c:915
A rectangle type with coordinates, size, and opacity.
Definition: mlt_types.h:186