コード例 #1
0
ファイル: cg-texture-2d-gl.c プロジェクト: rig-project/rig
bool
_cg_texture_2d_gl_allocate(cg_texture_t *tex, cg_error_t **error)
{
    cg_texture_2d_t *tex_2d = CG_TEXTURE_2D(tex);
    cg_texture_loader_t *loader = tex->loader;

    c_return_val_if_fail(loader, false);

    switch (loader->src_type) {
    case CG_TEXTURE_SOURCE_TYPE_SIZED:
        return allocate_with_size(tex_2d, loader, error);
    case CG_TEXTURE_SOURCE_TYPE_BITMAP:
        return allocate_from_bitmap(tex_2d, loader, error);
    case CG_TEXTURE_SOURCE_TYPE_EGL_IMAGE:
#if defined(CG_HAS_EGL_SUPPORT) && defined(EGL_KHR_image_base)
        return allocate_from_egl_image(tex_2d, loader, error);
#else
        c_return_val_if_reached(false);
#endif
    case CG_TEXTURE_SOURCE_TYPE_WEBGL_IMAGE:
#ifdef CG_HAS_WEBGL_SUPPORT
        return allocate_from_webgl_image(tex_2d, loader, error);
#else
        c_return_val_if_reached(false);
#endif
    case CG_TEXTURE_SOURCE_TYPE_GL_FOREIGN:
        return allocate_from_gl_foreign(tex_2d, loader, error);
    }

    c_return_val_if_reached(false);
}
コード例 #2
0
ファイル: cg-indices.c プロジェクト: rig-project/cglib
static size_t
sizeof_indices_type(cg_indices_type_t type)
{
    switch (type) {
    case CG_INDICES_TYPE_UNSIGNED_BYTE:
        return 1;
    case CG_INDICES_TYPE_UNSIGNED_SHORT:
        return 2;
    case CG_INDICES_TYPE_UNSIGNED_INT:
        return 4;
    }
    c_return_val_if_reached(0);
}
コード例 #3
0
static const char *
rut_headless_text_event_get_text(rut_input_event_t *event)
{
    c_return_val_if_reached(NULL); /* TODO */
    return NULL;
}