objc2-open-gl 0.3.2

Bindings to the OpenGL framework
Documentation
//! This file has been automatically generated by `objc2`'s `header-translator`.
//! DO NOT EDIT
use core::cell::UnsafeCell;
use core::marker::{PhantomData, PhantomPinned};
use objc2::__framework_prelude::*;

use crate::*;

/// [Apple's documentation](https://developer.apple.com/documentation/opengl/cglsharegrouprec?language=objc)
#[repr(C)]
#[derive(Debug)]
pub struct CGLShareGroupRec {
    inner: [u8; 0],
    _p: UnsafeCell<PhantomData<(*const UnsafeCell<()>, PhantomPinned)>>,
}

unsafe impl RefEncode for CGLShareGroupRec {
    const ENCODING_REF: Encoding = Encoding::Pointer(&Encoding::Struct("CGLShareGroupRec", &[]));
}

/// [Apple's documentation](https://developer.apple.com/documentation/opengl/cglsharegroupobj?language=objc)
pub type CGLShareGroupObj = *mut CGLShareGroupRec;

extern "C-unwind" {
    /// # Safety
    ///
    /// `ctx` must be a valid pointer.
    #[cfg(feature = "CGLTypes")]
    pub fn CGLGetShareGroup(ctx: CGLContextObj) -> CGLShareGroupObj;
}

/// [Apple's documentation](https://developer.apple.com/documentation/opengl/_cl_device_id?language=objc)
#[repr(C)]
#[derive(Debug)]
pub struct _cl_device_id {
    inner: [u8; 0],
    _p: UnsafeCell<PhantomData<(*const UnsafeCell<()>, PhantomPinned)>>,
}

unsafe impl RefEncode for _cl_device_id {
    const ENCODING_REF: Encoding = Encoding::Pointer(&Encoding::Struct("_cl_device_id", &[]));
}

/// [Apple's documentation](https://developer.apple.com/documentation/opengl/cl_device_id?language=objc)
pub type cl_device_id = *mut _cl_device_id;

extern "C-unwind" {
    pub fn CGLGetDeviceFromGLRenderer(renderer_id: GLint) -> cl_device_id;
}