/* subclass usage only */ gboolean gst_gl_base_memory_alloc_data (GstGLBaseMemory * gl_mem) { GstMemory *mem = (GstMemory *) gl_mem; if (gl_mem->data) return TRUE; GST_CAT_LOG (GST_CAT_GL_BASE_MEMORY, "%p attempting allocation of data " "pointer of size %" G_GSIZE_FORMAT, gl_mem, gl_mem->alloc_size); gl_mem->alloc_data = g_try_malloc (gl_mem->alloc_size); if (gl_mem->alloc_data == NULL) return FALSE; gl_mem->data = _align_data (gl_mem->alloc_data, mem->align, &mem->maxsize); GST_CAT_DEBUG (GST_CAT_GL_BASE_MEMORY, "%p allocated data pointer alloc %p, " "data %p", gl_mem, gl_mem->alloc_data, gl_mem->data); return TRUE; }
/* subclass usage only */ GstGLBaseBuffer * gst_gl_base_buffer_alloc_data (GstGLBaseBuffer * gl_mem) { GstMemory *mem = (GstMemory *) gl_mem; if (gl_mem->data) return gl_mem; GST_CAT_LOG (GST_CAT_GL_BASE_BUFFER, "%p attempting allocation of data " "pointer of size %" G_GSIZE_FORMAT, gl_mem, mem->maxsize); gl_mem->alloc_data = g_try_malloc (mem->maxsize); if (gl_mem->alloc_data == NULL) { gst_memory_unref (mem); return NULL; } gl_mem->data = _align_data (gl_mem->alloc_data, mem->align, &mem->maxsize); GST_CAT_DEBUG (GST_CAT_GL_BASE_BUFFER, "%p allocated data pointer alloc %p, " "data %p", gl_mem, gl_mem->alloc_data, gl_mem->data); return gl_mem; }