MLT  7.22.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(__linux__) && !defined(__APPLE__))
34 #include <locale.h>
35 typedef locale_t mlt_locale_t;
36 #elif defined(__APPLE__) || (defined(__FreeBSD_version) && __FreeBSD_version >= 900506)
37 #include <xlocale.h>
38 typedef locale_t mlt_locale_t;
39 #elif defined(__OpenBSD__)
40 /* XXX matches __nop_locale glue in libc++ */
41 typedef void *mlt_locale_t;
42 #else
43 typedef char *mlt_locale_t;
44 #endif
45 
47 extern void mlt_property_clear(mlt_property self);
49 extern int mlt_property_set_int(mlt_property self, int value);
50 extern int mlt_property_set_double(mlt_property self, double value);
52 extern int mlt_property_set_int64(mlt_property self, int64_t value);
53 extern int mlt_property_set_string(mlt_property self, const char *value);
55  void *value,
56  int length,
57  mlt_destructor destructor,
58  mlt_serialiser serialiser);
59 extern int mlt_property_get_int(mlt_property self, double fps, mlt_locale_t);
60 extern double mlt_property_get_double(mlt_property self, double fps, mlt_locale_t);
62 extern int64_t mlt_property_get_int64(mlt_property self);
67 extern void *mlt_property_get_data(mlt_property self, int *length);
68 extern void mlt_property_close(mlt_property self);
71 
73  mlt_property points[],
74  double progress,
75  double fps,
76  mlt_locale_t locale,
77  mlt_keyframe_type interp);
79  mlt_property self, double fps, mlt_locale_t locale, int position, int length);
81  mlt_property self, double fps, mlt_locale_t locale, int position, int length);
83  mlt_property self, double fps, mlt_locale_t locale, int position, int length);
85  double value,
86  double fps,
87  mlt_locale_t locale,
88  int position,
89  int length,
90  mlt_keyframe_type keyframe_type);
92  int value,
93  double fps,
94  mlt_locale_t locale,
95  int position,
96  int length,
97  mlt_keyframe_type keyframe_type);
99  mlt_property self, const char *value, double fps, mlt_locale_t locale, int position, int length);
102 
106  mlt_color value,
107  double fps,
108  mlt_locale_t locale,
109  int position,
110  int length,
111  mlt_keyframe_type keyframe_type);
113  mlt_property self, double fps, mlt_locale_t locale, int position, int length);
114 
118  mlt_rect value,
119  double fps,
120  mlt_locale_t locale,
121  int position,
122  int length,
123  mlt_keyframe_type keyframe_type);
125  mlt_property self, double fps, mlt_locale_t locale, int position, int length);
126 
132 
133 #endif
char * mlt_locale_t
Definition: mlt_property.h:43
Provides forward definitions of all public types.
char *(* mlt_serialiser)(void *, int length)
pointer to serialization function
Definition: mlt_types.h:270
mlt_time_format
The time string formats.
Definition: mlt_types.h:134
int32_t mlt_position
Definition: mlt_types.h:217
void(* mlt_destructor)(void *)
pointer to destructor function
Definition: mlt_types.h:269
mlt_keyframe_type
Interpolation methods for animation keyframes.
Definition: mlt_types.h:143
Property Animation class.
Definition: mlt_animation.c:51
A tuple of color components.
Definition: mlt_types.h:234
Properties class.
Definition: mlt_properties.h:40
Property class.
Definition: mlt_property.c:62
int mlt_property_set_position(mlt_property self, mlt_position value)
Set the property to a position value.
Definition: mlt_property.c:215
mlt_animation mlt_property_get_animation(mlt_property self)
Get an object's animation object.
Definition: mlt_property.c:1655
int mlt_property_get_int(mlt_property self, double fps, mlt_locale_t locale)
Get the property as an integer.
Definition: mlt_property.c:474
mlt_rect mlt_property_anim_get_rect(mlt_property self, double fps, mlt_locale_t locale, int position, int length)
Get a rectangle at a frame position.
Definition: mlt_property.c:2009
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:283
mlt_properties mlt_property_get_properties(mlt_property self)
Get a nested properties object.
Definition: mlt_property.c:2057
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:687
int mlt_property_anim_set_int(mlt_property self, int value, double fps, mlt_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:1583
double mlt_property_anim_get_double(mlt_property self, double fps, mlt_locale_t locale, int position, int length)
Get the real number at a frame position.
Definition: mlt_property.c:1428
double mlt_property_get_double(mlt_property self, double fps, mlt_locale_t locale)
Get the property as a floating point.
Definition: mlt_property.c:568
mlt_rect mlt_property_get_rect(mlt_property self, mlt_locale_t locale)
Get the property as a rectangle.
Definition: mlt_property.c:1870
void * mlt_property_get_data(mlt_property self, int *length)
Get the binary data from a property.
Definition: mlt_property.c:863
mlt_property mlt_property_init()
Construct a property and initialize it.
Definition: mlt_property.c:90
int mlt_property_anim_set_color(mlt_property self, mlt_color value, double fps, mlt_locale_t locale, int position, int length, mlt_keyframe_type keyframe_type)
Set a property animation keyframe to a color.
Definition: mlt_property.c:1749
int mlt_property_anim_get_int(mlt_property self, double fps, mlt_locale_t locale, int position, int length)
Get the property as an integer number at a frame position.
Definition: mlt_property.c:1462
int mlt_property_set_int(mlt_property self, int value)
Set the property to an integer value.
Definition: mlt_property.c:178
int mlt_property_anim_set_string(mlt_property self, const char *value, double fps, mlt_locale_t locale, int position, int length)
Set a property animation keyframe to a string.
Definition: mlt_property.c:1625
int mlt_property_set_color(mlt_property self, mlt_color value)
Set the property to a color value.
Definition: mlt_property.c:1671
mlt_color mlt_property_get_color(mlt_property self, double fps, mlt_locale_t locale)
Get the property as a color.
Definition: mlt_property.c:1691
char * mlt_property_get_time(mlt_property self, mlt_time_format format, double fps, mlt_locale_t locale)
Get the property as a time string.
Definition: mlt_property.c:1050
int mlt_property_is_color(mlt_property self)
Check if a property is a color.
Definition: mlt_property.c:2087
void mlt_property_pass(mlt_property self, mlt_property that)
Copy a property.
Definition: mlt_property.c:898
char * mlt_property_get_string_l_tf(mlt_property self, mlt_locale_t locale, mlt_time_format time_format)
Get the property as a string (with locale and time format).
Definition: mlt_property.c:763
char * mlt_property_get_string(mlt_property self)
Get the property as a string.
Definition: mlt_property.c:745
int mlt_property_set_int64(mlt_property self, int64_t value)
Set the property to a 64-bit integer value.
Definition: mlt_property.c:258
int mlt_property_anim_set_double(mlt_property self, double value, double fps, mlt_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:1543
int mlt_property_interpolate(mlt_property self, mlt_property p[], double progress, double fps, mlt_locale_t locale, mlt_keyframe_type interp)
Interpolate a new property value given a set of other properties.
Definition: mlt_property.c:1231
int mlt_property_is_anim(mlt_property self)
Check if a property is animated.
Definition: mlt_property.c:2075
void mlt_property_clear(mlt_property self)
Clear (0/null) a property.
Definition: mlt_property.c:145
int mlt_property_is_rect(mlt_property self)
Check if a property is a rect.
Definition: mlt_property.c:2114
int mlt_property_is_numeric(mlt_property self, mlt_locale_t locale)
Determine if the property holds a numeric or numeric string value.
Definition: mlt_property.c:1143
int64_t mlt_property_get_int64(mlt_property self)
Get the property as a signed integer.
Definition: mlt_property.c:651
int mlt_property_set_properties(mlt_property self, mlt_properties properties)
Set a nested properties object.
Definition: mlt_property.c:2040
int mlt_property_set_double(mlt_property self, double value)
Set the property to a floating point value.
Definition: mlt_property.c:196
int mlt_property_anim_set_rect(mlt_property self, mlt_rect value, double fps, mlt_locale_t locale, int position, int length, mlt_keyframe_type keyframe_type)
Set a property animation keyframe to a rectangle.
Definition: mlt_property.c:1971
int mlt_property_is_clear(mlt_property self)
Check if a property is cleared.
Definition: mlt_property.c:159
int mlt_property_set_rect(mlt_property self, mlt_rect value)
Set a property to a mlt_rect rectangle.
Definition: mlt_property.c:1845
char * mlt_property_anim_get_string(mlt_property self, double fps, mlt_locale_t locale, int position, int length)
Get the string at certain a frame position.
Definition: mlt_property.c:1496
mlt_position mlt_property_get_position(mlt_property self, double fps, mlt_locale_t locale)
Get the property as a position.
Definition: mlt_property.c:602
char * mlt_property_get_string_l(mlt_property self, mlt_locale_t locale)
Get the property as a string (with locale).
Definition: mlt_property.c:844
mlt_color mlt_property_anim_get_color(mlt_property self, double fps, mlt_locale_t locale, int position, int length)
Get a color at a frame position.
Definition: mlt_property.c:1787
int mlt_property_set_string(mlt_property self, const char *value)
Set the property to a string value.
Definition: mlt_property.c:235
void mlt_property_close(mlt_property self)
Destroy a property and free all related resources.
Definition: mlt_property.c:882
A rectangle type with coordinates, size, and opacity.
Definition: mlt_types.h:223