Structure.take

bool take(gst.structure.Structure oldstrPtr = null, gst.structure.Structure newstr = null)

Atomically modifies a pointer to point to a new structure. The #GstStructure oldstr_ptr is pointing to is freed and newstr is taken ownership over.

Either newstr and the value pointed to by oldstr_ptr may be null.

It is a programming error if both newstr and the value pointed to by oldstr_ptr refer to the same, non-null structure.

Parameters

oldstrPtrpointer to a place of a #GstStructure to take
newstra new #GstStructure

Returns

true if newstr was different from oldstr_ptr