TagList

Description List of tags and values used to describe media metadata. Last reviewed on 2005-11-23 (0.9.5)

class TagList {}

Constructors

this
this(GstTagList* gstTagList)

Sets our main struct and passes it to the parent class

this
this()

Creates a new empty GstTagList.

Members

Functions

addValist
void addValist(GstTagMergeMode mode, string tag, void* varArgs)

Sets the values for the given tags using the specified mode.

addValistValues
void addValistValues(GstTagMergeMode mode, string tag, void* varArgs)

Sets the GValues for the given tags using the specified mode.

copy
TagList copy()

Copies a given GstTagList.

foreac
void foreac(GstTagForeachFunc func, void* userData)

Calls the given function for each tag inside the tag list. Note that if there is no tag, the function won't be called at all.

free
void free()

Frees the given list and all associated values.

getBoolean
int getBoolean(string tag, int value)

Copies the contents for the given tag into the value, merging multiple values into one if multiple values are associated with the tag.

getBooleanIndex
int getBooleanIndex(string tag, uint index, int value)

Gets the value that is at the given index for the given tag in the given list.

getChar
int getChar(string tag, string value)

Copies the contents for the given tag into the value, merging multiple values into one if multiple values are associated with the tag.

getCharIndex
int getCharIndex(string tag, uint index, string value)

Gets the value that is at the given index for the given tag in the given list.

getDate
int getDate(string tag, Date value)

Copies the contents for the given tag into the value, merging multiple values into one if multiple values are associated with the tag.

getDateIndex
int getDateIndex(string tag, uint index, Date value)

Gets the value that is at the given index for the given tag in the given list.

getDouble
int getDouble(string tag, double value)

Copies the contents for the given tag into the value, merging multiple values into one if multiple values are associated with the tag.

getDoubleIndex
int getDoubleIndex(string tag, uint index, double value)

Gets the value that is at the given index for the given tag in the given list.

getFloat
int getFloat(string tag, float value)

Copies the contents for the given tag into the value, merging multiple values into one if multiple values are associated with the tag.

getFloatIndex
int getFloatIndex(string tag, uint index, float value)

Gets the value that is at the given index for the given tag in the given list.

getInt
int getInt(string tag, int value)

Copies the contents for the given tag into the value, merging multiple values into one if multiple values are associated with the tag.

getInt64
int getInt64(string tag, long value)

Copies the contents for the given tag into the value, merging multiple values into one if multiple values are associated with the tag.

getInt64_Index
int getInt64_Index(string tag, uint index, long value)

Gets the value that is at the given index for the given tag in the given list.

getIntIndex
int getIntIndex(string tag, uint index, int value)

Gets the value that is at the given index for the given tag in the given list.

getLong
int getLong(string tag, glong value)

Copies the contents for the given tag into the value, merging multiple values into one if multiple values are associated with the tag.

getLongIndex
int getLongIndex(string tag, uint index, glong value)

Gets the value that is at the given index for the given tag in the given list.

getPointer
int getPointer(string tag, void** value)

Copies the contents for the given tag into the value, merging multiple values into one if multiple values are associated with the tag.

getPointerIndex
int getPointerIndex(string tag, uint index, void** value)

Gets the value that is at the given index for the given tag in the given list.

getString
int getString(string tag, string value)

Copies the contents for the given tag into the value, possibly merging multiple values into one if multiple values are associated with the tag. Use gst_tag_list_get_string_index (list, tag, 0, value) if you want to retrieve the first string associated with this tag unmodified. The resulting string in value should be freed by the caller using g_free when no longer needed

getStringIndex
int getStringIndex(string tag, uint index, string value)

Gets the value that is at the given index for the given tag in the given list. The resulting string in value should be freed by the caller using g_free when no longer needed

getStruct
void* getStruct()

the main Gtk struct as a void*

getTagListStruct
GstTagList* getTagListStruct()
Undocumented in source. Be warned that the author may not have intended to support it.
getTagSize
uint getTagSize(string tag)

Checks how many value are stored in this tag list for the given tag.

getUchar
int getUchar(string tag, char value)

Copies the contents for the given tag into the value, merging multiple values into one if multiple values are associated with the tag.

getUcharIndex
int getUcharIndex(string tag, uint index, char value)

Gets the value that is at the given index for the given tag in the given list.

getUint
int getUint(string tag, uint value)

Copies the contents for the given tag into the value, merging multiple values into one if multiple values are associated with the tag.

getUint64
int getUint64(string tag, ulong value)

Copies the contents for the given tag into the value, merging multiple values into one if multiple values are associated with the tag.

getUint64_Index
int getUint64_Index(string tag, uint index, ulong value)

Gets the value that is at the given index for the given tag in the given list.

getUintIndex
int getUintIndex(string tag, uint index, uint value)

Gets the value that is at the given index for the given tag in the given list.

getUlong
int getUlong(string tag, gulong value)

Copies the contents for the given tag into the value, merging multiple values into one if multiple values are associated with the tag.

getUlongIndex
int getUlongIndex(string tag, uint index, gulong value)

Gets the value that is at the given index for the given tag in the given list.

getValueIndex
Value getValueIndex(string tag, uint index)

Gets the value that is at the given index for the given tag in the given list.

insert
void insert(TagList from, GstTagMergeMode mode)

Inserts the tags of the second list into the first list using the given mode.

isEmpty
int isEmpty()

Checks if the given taglist is empty.

merge
TagList merge(TagList list2, GstTagMergeMode mode)

Merges the two given lists into a new list. If one of the lists is NULL, a copy of the other is returned. If both lists are NULL, NULL is returned.

removeTag
void removeTag(string tag)

Removes the given tag from the taglist.

Static functions

copyValue
int copyValue(Value dest, TagList list, string tag)

Copies the contents for the given tag into the value, merging multiple values into one if multiple values are associated with the tag. You must g_value_unset() the value after use.

exists
int exists(string tag)

Checks if the given type is already registered.

getDescription
string getDescription(string tag)

Returns the human-readable description of this tag, You must not change or free this string.

getFlag
GstTagFlag getFlag(string tag)

Gets the flag of tag.

getNick
string getNick(string tag)

Returns the human-readable name of this tag, You must not change or free this string.

getType
GType getType(string tag)

Gets the GType used for this tag.

gstIsTagList
int gstIsTagList(void* p)

Checks if the given pointer is a taglist.

isFixed
int isFixed(string tag)

Checks if the given tag is fixed. A fixed tag can only contain one value. Unfixed tags can contain lists of values.

mergeStringsWithComma
void mergeStringsWithComma(Value dest, Value src)

This is a convenience function for the func argument of gst_tag_register(). It concatenates all given strings using a comma. The tag must be registered as a G_TYPE_STRING or this function will fail.

mergeUseFirst
void mergeUseFirst(Value dest, Value src)

This is a convenience function for the func argument of gst_tag_register(). It creates a copy of the first value from the list.

register
void register(string name, GstTagFlag flag, GType type, string nick, string blurb, GstTagMergeFunc func)

Registers a new tag type for the use with GStreamer's type system. If a type with that name is already registered, that one is used. The old registration may have used a different type however. So don't rely on your supplied values. Important: if you do not supply a merge function the implication will be that there can only be one single value for this tag in a tag list and any additional values will silenty be discarded when being added (unless GST_TAG_MERGE_REPLACE, GST_TAG_MERGE_REPLACE_ALL, or GST_TAG_MERGE_PREPEND is used as merge mode, in which case the new value will replace the old one in the list). The merge function will be called from gst_tag_list_copy_value() when it is required that one or more values for a tag be condensed into one single value. This may happen from gst_tag_list_get_string(), gst_tag_list_get_int(), gst_tag_list_get_double() etc. What will happen exactly in that case depends on how the tag was registered and if a merge function was supplied and if so which one. Two default merge functions are provided: gst_tag_merge_use_first() and gst_tag_merge_strings_with_commas().

Variables

gstTagList
GstTagList* gstTagList;

the main Gtk struct

Meta