gstreamermm
1.10.0
|
Allocate memory blocks. More...
#include <gstreamermm/allocator.h>
Public Member Functions | |
Allocator (Allocator&& src) noexcept | |
Allocator& | operator= (Allocator&& src) noexcept |
~Allocator () noexcept override | |
GstAllocator* | gobj () |
Provides access to the underlying C GObject. More... | |
const GstAllocator* | gobj () const |
Provides access to the underlying C GObject. More... | |
GstAllocator* | gobj_copy () |
Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs. More... | |
void | free (Glib::RefPtr< Gst::Memory >&& memory) |
Free memory that was previously allocated with alloc(). More... | |
Glib::RefPtr< Gst::Memory > | alloc (gsize size, const Gst::AllocationParams& params) |
Use allocator to allocate a new memory block with memory that is at least size big. More... | |
Glib::RefPtr< Gst::Memory > | alloc (gsize size) |
A alloc() convenience overload. More... | |
void | set_default () |
Set the default allocator. More... | |
virtual Glib::RefPtr< Gst::Memory > | alloc_vfunc (gsize size, const Gst::AllocationParams& params) |
virtual void | free_vfunc (Glib::RefPtr< Gst::Memory >&& memory) |
![]() | |
Object (Object&& src) noexcept | |
Object& | operator= (Object&& src) noexcept |
~Object () noexcept override | |
GstObject* | gobj () |
Provides access to the underlying C GObject. More... | |
const GstObject* | gobj () const |
Provides access to the underlying C GObject. More... | |
GstObject* | gobj_copy () |
Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs. More... | |
bool | is_element () const |
bool | is_element_factory () const |
bool | is_pad () const |
bool | is_pad_template () const |
bool | is_bin () const |
guint32 | get_flags () const |
Returns the entire set of flags for the object. More... | |
bool | set_name (const Glib::ustring& name) |
Sets the name of object, or gives object a guaranteed unique name (if name is nullptr ). More... | |
Glib::ustring | get_name () const |
Returns a copy of the name of object. More... | |
bool | set_parent (const Glib::RefPtr< Gst::Object >& parent) |
Sets the parent of object to parent. More... | |
Glib::RefPtr< Gst::Object > | get_parent () |
Returns the parent of object. More... | |
Glib::RefPtr< const Gst::Object > | get_parent () const |
Returns the parent of object. More... | |
void | unparent () |
Clear the parent of object, removing the associated reference. More... | |
void | set_control_rate (Gst::ClockTime control_rate) |
Change the control-rate for this object. More... | |
Gst::ClockTime | get_control_rate () const |
Obtain the control-rate for this object. More... | |
Gst::ClockTime | suggest_next_sync () const |
Returns a suggestion for timestamps where buffers should be split to get best controller results. More... | |
bool | sync_values (Gst::ClockTime timestamp) |
Sets the properties of the object, according to the Gst::ControlSources that (maybe) handle them and for the given timestamp. More... | |
void | set_control_bindings_disabled (bool disabled) |
This function is used to disable all controlled properties of the object for some time, i.e. sync_values() will do nothing. More... | |
bool | has_asctive_control_bindings () const |
Check if the object has an active controlled properties. More... | |
bool | has_ancestor (const Glib::RefPtr< const Gst::Object >& ancestor) const |
Check if object has an ancestor ancestor somewhere up in the hierarchy. More... | |
bool | has_as_ancestor (const Glib::RefPtr< Gst::Object >& ancestor) const |
Check if object has an ancestor ancestor somewhere up in the hierarchy. More... | |
bool | has_as_parent (const Glib::RefPtr< Gst::Object >& parent) const |
Check if parent is the parent of object. More... | |
Glib::ustring | get_path_string () |
Generates a string describing the path of object in the object hierarchy. More... | |
Glib::PropertyProxy< Glib::ustring > | property_name () |
The name of the object. More... | |
Glib::PropertyProxy_ReadOnly< Glib::ustring > | property_name () const |
The name of the object. More... | |
Glib::PropertyProxy< Glib::RefPtr< Gst::Object > > | property_parent () |
The parent of the object. More... | |
Glib::PropertyProxy_ReadOnly< Glib::RefPtr< Gst::Object > > | property_parent () const |
The parent of the object. More... | |
Glib::SignalProxy< void, const Glib::RefPtr< Gst::Object >&, GParamSpec*> | signal_deep_notify () |
int | get_refcount () const |
Static Public Member Functions | |
static GType | get_type () |
Get the GType for this class, for use with the underlying GObject type system. More... | |
static Glib::RefPtr< Gst::Allocator > | find (const Glib::ustring& name) |
Find a previously registered allocator with name. More... | |
static void | register_allocator (const Glib::ustring& name, Glib::RefPtr< Gst::Allocator >&& allocator) |
Registers the memory allocator with name. More... | |
static Glib::RefPtr< Gst::Allocator > | get_default_allocator () |
Find default allocator. More... | |
![]() | |
static GType | get_type () |
Get the GType for this class, for use with the underlying GObject type system. More... | |
static bool | check_uniqueness (const Glib::ListHandle< const Gst::Object >& list, const Glib::ustring& name) |
Checks to see if there is any object named name in list. More... | |
Related Functions | |
(Note that these are not member functions.) | |
Glib::RefPtr< Gst::Allocator > | wrap (GstAllocator* object, bool take_copy=false) |
A Glib::wrap() method for this object. More... | |
![]() | |
Glib::RefPtr< Gst::Object > | wrap (GstObject* object, bool take_copy=false) |
A Glib::wrap() method for this object. More... | |
Additional Inherited Members | |
![]() | |
virtual void | on_deep_notify (const Glib::RefPtr< Gst::Object >& prop_object, GParamSpec* prop) |
This is a default handler for the signal signal_deep_notify(). More... | |
Allocate memory blocks.
Memory is usually created by allocators with a alloc() method call. When nullptr is used as the allocator, the default allocator will be used.
New allocators can be registered with register_allocator(). Allocators are identified by name and can be retrieved with find(). set_default() can be used to change the default allocator.
|
noexcept |
|
overridenoexcept |
Glib::RefPtr<Gst::Memory> Gst::Allocator::alloc | ( | gsize | size, |
const Gst::AllocationParams& | params | ||
) |
Use allocator to allocate a new memory block with memory that is at least size big.
The optional params can specify the prefix and padding for the memory. If nullptr
is passed, no flags, no extra prefix/padding and a default alignment is used.
The prefix/padding will be filled with 0 if flags contains Gst::MEMORY_FLAG_ZERO_PREFIXED and Gst::MEMORY_FLAG_ZERO_PADDED respectively.
When allocator is nullptr
, the default allocator will be used.
The alignment in params is given as a bitmask so that align + 1 equals the amount of bytes to align to. For example, to align to 8 bytes, use an alignment of 7.
size | Size of the visible memory area. |
params | Optional parameters. |
Glib::RefPtr<Gst::Memory> Gst::Allocator::alloc | ( | gsize | size | ) |
A alloc() convenience overload.
|
virtual |
|
static |
Find a previously registered allocator with name.
When name is nullptr
, the default allocator will be returned.
name | The name of the allocator. |
nullptr
when the allocator with name was not registered. Use Gst::Object::unref() to release the allocator after usage. void Gst::Allocator::free | ( | Glib::RefPtr< Gst::Memory >&& | memory | ) |
Free memory that was previously allocated with alloc().
memory | The memory to free. |
|
virtual |
|
static |
Find default allocator.
|
static |
Get the GType for this class, for use with the underlying GObject type system.
|
inline |
Provides access to the underlying C GObject.
|
inline |
Provides access to the underlying C GObject.
GstAllocator* Gst::Allocator::gobj_copy | ( | ) |
Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs.
|
static |
Registers the memory allocator with name.
This function takes ownership of allocator.
name | The name of the allocator. |
allocator | Gst::Allocator. |
void Gst::Allocator::set_default | ( | ) |
Set the default allocator.
This function takes ownership of allocator.
|
related |
A Glib::wrap() method for this object.
object | The C instance. |
take_copy | False if the result should take ownership of the C instance. True if it should take a new copy or ref. |