23#ifndef MLT_PROPERTIES_H
24#define MLT_PROPERTIES_H
int mlt_properties_to_utf8(mlt_properties properties, const char *name_from, const char *name_to)
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
A tuple of color components.
Definition: mlt_types.h:197
Properties class.
Definition: mlt_properties.h:40
int mlt_properties_set_int64(mlt_properties self, const char *name, int64_t value)
Set a property to a 64-bit integer value.
Definition: mlt_properties.c:1132
int mlt_properties_set(mlt_properties self, const char *name, const char *value)
Set a property to a string.
Definition: mlt_properties.c:753
void mlt_properties_pass_property(mlt_properties self, mlt_properties that, const char *name)
Copy a property to another properties list.
Definition: mlt_properties.c:659
mlt_properties mlt_properties_new()
Create a properties object.
Definition: mlt_properties.c:120
int mlt_properties_set_double(mlt_properties self, const char *name, double value)
Set a property to a floating point value.
Definition: mlt_properties.c:1184
int mlt_properties_set_int(mlt_properties self, const char *name, int value)
Set a property to an integer value.
Definition: mlt_properties.c:1088
int mlt_properties_init(mlt_properties self, void *child)
Initialize a properties object that was already allocated.
Definition: mlt_properties.c:85
void * child
the object of a subclass
Definition: mlt_properties.h:41
int mlt_properties_set_color(mlt_properties self, const char *name, mlt_color color)
Set a property to an integer value by color.
Definition: mlt_properties.c:2443
void mlt_properties_debug(mlt_properties self, const char *title, FILE *output)
Output the properties to a file handle.
Definition: mlt_properties.c:1364
int mlt_properties_anim_set_double(mlt_properties self, const char *name, double value, int position, int length, mlt_keyframe_type keyframe_type)
Set a property to a real number at a frame position.
Definition: mlt_properties.c:2624
int mlt_properties_set_data(mlt_properties self, const char *name, void *value, int length, mlt_destructor destroy, mlt_serialiser serialise)
Store binary data as a property.
Definition: mlt_properties.c:1285
void * close_object
the object supplied to the close virtual function
Definition: mlt_properties.h:46
char * mlt_properties_serialise_yaml(mlt_properties self)
Serialize a properties list as a string of YAML Tiny.
Definition: mlt_properties.c:2240
int mlt_properties_inherit(mlt_properties self, mlt_properties that)
Copy all serializable properties to another properties list.
Definition: mlt_properties.c:449
mlt_color mlt_properties_get_color(mlt_properties self, const char *name)
Convert a numeric property to a tuple of color components.
Definition: mlt_properties.c:2387
mlt_rect mlt_properties_anim_get_rect(mlt_properties self, const char *name, int position, int length)
Get a rectangle associated to the name at a frame position.
Definition: mlt_properties.c:2758
void * local
instance object
Definition: mlt_properties.h:42
mlt_animation mlt_properties_get_animation(mlt_properties self, const char *name)
Get the animation associated to the name.
Definition: mlt_properties.c:2657
int mlt_properties_preset(mlt_properties self, const char *name)
Set properties from a preset.
Definition: mlt_properties.c:290
int mlt_properties_set_or_default(mlt_properties self, const char *name, const char *value, const char *def)
Set or default a property to a string.
Definition: mlt_properties.c:855
int64_t mlt_properties_get_int64(mlt_properties self, const char *name)
Get a 64-bit integer associated to the name.
Definition: mlt_properties.c:1117
int mlt_properties_pass_list(mlt_properties self, mlt_properties that, const char *list)
Copy all properties specified in a comma-separated list to another properties list.
Definition: mlt_properties.c:682
char * mlt_properties_get_value_tf(mlt_properties self, int index, mlt_time_format time_format)
Get a property's string value by index (with time format).
Definition: mlt_properties.c:956
int mlt_properties_pass(mlt_properties self, mlt_properties that, const char *prefix)
Pass all serializable properties that match a prefix to another properties object.
Definition: mlt_properties.c:530
int mlt_properties_rename(mlt_properties self, const char *source, const char *dest)
Rename a property.
Definition: mlt_properties.c:1312
char * mlt_properties_anim_get(mlt_properties self, const char *name, int position, int length)
Get a string value by name at a frame position.
Definition: mlt_properties.c:2484
int mlt_properties_set_lcnumeric(mlt_properties self, const char *locale)
Set the numeric locale used for string/double conversions.
Definition: mlt_properties.c:140
mlt_properties mlt_properties_load(const char *filename)
Create a properties object by reading a .properties text file.
Definition: mlt_properties.c:259
char * mlt_properties_get_value(mlt_properties self, int index)
Get a property's string value by index.
Definition: mlt_properties.c:974
int mlt_properties_from_utf8(mlt_properties properties, const char *name_from, const char *name_to)
Convert UTF-8 property to the locale-defined encoding.
Definition: mlt_properties.c:2783
void mlt_properties_mirror(mlt_properties self, mlt_properties that)
Set a properties list to be a mirror copy of another.
Definition: mlt_properties.c:434
int mlt_properties_anim_set_int(mlt_properties self, const char *name, int value, int position, int length, mlt_keyframe_type keyframe_type)
Set a property to an integer value at a frame position.
Definition: mlt_properties.c:2566
void mlt_properties_clear(mlt_properties self, const char *name)
Remove the value for a property.
Definition: mlt_properties.c:2288
int mlt_properties_is_sequence(mlt_properties properties)
Determine if the properties list is really just a sequence or ordered list.
Definition: mlt_properties.c:1584
void mlt_properties_dump(mlt_properties self, FILE *output)
Dump the properties to a file handle.
Definition: mlt_properties.c:1346
int mlt_properties_set_position(mlt_properties self, const char *name, mlt_position value)
Set a property to a position value.
Definition: mlt_properties.c:1236
const char * mlt_properties_get_lcnumeric(mlt_properties self)
Get the numeric locale for this properties object.
Definition: mlt_properties.c:174
int mlt_properties_parse(mlt_properties self, const char *namevalue)
Set a value by parsing a name=value string.
Definition: mlt_properties.c:1020
void mlt_properties_close(mlt_properties self)
Close a properties object.
Definition: mlt_properties.c:1522
double mlt_properties_get_double(mlt_properties self, const char *name)
Get a floating point value associated to the name.
Definition: mlt_properties.c:1161
char * mlt_properties_get_name(mlt_properties self, int index)
Get a property name by index.
Definition: mlt_properties.c:937
mlt_rect mlt_properties_get_rect(mlt_properties self, const char *name)
Get a rectangle associated to the name.
Definition: mlt_properties.c:2701
int mlt_properties_copy(mlt_properties self, mlt_properties that, const char *prefix)
Copy all serializable properties that match a prefix to another properties object.
Definition: mlt_properties.c:499
int mlt_properties_anim_get_int(mlt_properties self, const char *name, int position, int length)
Get an integer associated to the name at a frame position.
Definition: mlt_properties.c:2544
mlt_properties mlt_properties_get_properties_at(mlt_properties self, int index)
Get a nested properties object by index.
Definition: mlt_properties.c:2847
double mlt_properties_anim_get_double(mlt_properties self, const char *name, int position, int length)
Get a real number associated to the name at a frame position.
Definition: mlt_properties.c:2602
int mlt_properties_dec_ref(mlt_properties self)
Decrement the reference count.
Definition: mlt_properties.c:395
int mlt_properties_exists(mlt_properties self, const char *name)
Check if a property exists.
Definition: mlt_properties.c:2316
mlt_position mlt_properties_get_position(mlt_properties self, const char *name)
Get a position value associated to the name.
Definition: mlt_properties.c:1213
int mlt_properties_save(mlt_properties self, const char *filename)
Save the properties to a file by name.
Definition: mlt_properties.c:1395
void * mlt_properties_get_data_at(mlt_properties self, int index, int *size)
Get a data value by index.
Definition: mlt_properties.c:989
mlt_position mlt_properties_time_to_frames(mlt_properties self, const char *time)
Convert a time string to a frame count.
Definition: mlt_properties.c:2369
int mlt_properties_inc_ref(mlt_properties self)
Increment the reference count.
Definition: mlt_properties.c:375
void * mlt_properties_get_data(mlt_properties self, const char *name, int *length)
Get a binary data value associated to the name.
Definition: mlt_properties.c:1267
mlt_destructor close
the destructor virtual function
Definition: mlt_properties.h:45
char * mlt_properties_frames_to_time(mlt_properties self, mlt_position frames, mlt_time_format format)
Convert a frame count to a time string.
Definition: mlt_properties.c:2354
int mlt_properties_count(mlt_properties self)
Return the number of items in the list.
Definition: mlt_properties.c:1005
int mlt_properties_anim_set(mlt_properties self, const char *name, const char *value, int position, int length)
Set a property to a string at a frame position.
Definition: mlt_properties.c:2508
int mlt_properties_set_properties(mlt_properties self, const char *name, mlt_properties properties)
Set a property to a nested properties object.
Definition: mlt_properties.c:2804
void mlt_properties_lock(mlt_properties self)
Protect a properties list against concurrent access.
Definition: mlt_properties.c:2261
char * mlt_properties_get_time(mlt_properties self, const char *name, mlt_time_format format)
Get a time string associated to the name.
Definition: mlt_properties.c:2331
int mlt_properties_anim_set_rect(mlt_properties self, const char *name, mlt_rect value, int position, int length, mlt_keyframe_type keyframe_type)
Set a property to a rectangle value at a frame position.
Definition: mlt_properties.c:2722
int mlt_properties_get_int(mlt_properties self, const char *name)
Get an integer associated to the name.
Definition: mlt_properties.c:1065
void mlt_properties_unlock(mlt_properties self)
End protecting a properties list against concurrent access.
Definition: mlt_properties.c:2273
mlt_properties mlt_properties_get_properties(mlt_properties self, const char *name)
Get a nested properties object by name.
Definition: mlt_properties.c:2833
int mlt_properties_is_anim(mlt_properties self, const char *name)
Check if a property is animated.
Definition: mlt_properties.c:2864
int mlt_properties_ref_count(mlt_properties self)
Get the reference count.
Definition: mlt_properties.c:415
int mlt_properties_set_rect(mlt_properties self, const char *name, mlt_rect value)
Set a property to a rectangle value.
Definition: mlt_properties.c:2672
mlt_properties mlt_properties_parse_yaml(const char *filename)
Parse a YAML Tiny file by name.
Definition: mlt_properties.c:1911
int mlt_properties_set_string(mlt_properties self, const char *name, const char *value)
Set a property to a string.
Definition: mlt_properties.c:874
int mlt_properties_dir_list(mlt_properties self, const char *dirname, const char *pattern, int sort)
Get the contents of a directory.
Definition: mlt_properties.c:1481
char * mlt_properties_get(mlt_properties self, const char *name)
Get a string value by name.
Definition: mlt_properties.c:916
A rectangle type with coordinates, size, and opacity.
Definition: mlt_types.h:186