objc2_gl_kit/generated/
GLKEffectPropertyTexture.rs

1//! This file has been automatically generated by `objc2`'s `header-translator`.
2//! DO NOT EDIT
3use core::ffi::*;
4use core::ptr::NonNull;
5use objc2::__framework_prelude::*;
6#[cfg(feature = "objc2-open-gl")]
7#[cfg(target_os = "macos")]
8use objc2_open_gl::*;
9
10use crate::*;
11
12/// [Apple's documentation](https://developer.apple.com/documentation/glkit/glktexturetarget?language=objc)
13// NS_ENUM
14#[cfg(feature = "objc2-open-gl")]
15#[cfg(target_os = "macos")]
16#[repr(transparent)]
17#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
18pub struct GLKTextureTarget(pub GLenum);
19#[cfg(feature = "objc2-open-gl")]
20#[cfg(target_os = "macos")]
21impl GLKTextureTarget {
22    #[doc(alias = "GLKTextureTarget2D")]
23    pub const Target2D: Self = Self(3553);
24    #[doc(alias = "GLKTextureTargetCubeMap")]
25    pub const TargetCubeMap: Self = Self(34067);
26    #[doc(alias = "GLKTextureTargetCt")]
27    pub const TargetCt: Self = Self(2);
28}
29
30#[cfg(feature = "objc2-open-gl")]
31#[cfg(target_os = "macos")]
32unsafe impl Encode for GLKTextureTarget {
33    const ENCODING: Encoding = GLenum::ENCODING;
34}
35
36#[cfg(feature = "objc2-open-gl")]
37#[cfg(target_os = "macos")]
38unsafe impl RefEncode for GLKTextureTarget {
39    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
40}
41
42/// [Apple's documentation](https://developer.apple.com/documentation/glkit/glktextureenvmode?language=objc)
43// NS_ENUM
44#[cfg(feature = "objc2-open-gl")]
45#[cfg(target_os = "macos")]
46#[repr(transparent)]
47#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
48pub struct GLKTextureEnvMode(pub GLint);
49#[cfg(feature = "objc2-open-gl")]
50#[cfg(target_os = "macos")]
51impl GLKTextureEnvMode {
52    #[doc(alias = "GLKTextureEnvModeReplace")]
53    pub const Replace: Self = Self(0);
54    #[doc(alias = "GLKTextureEnvModeModulate")]
55    pub const Modulate: Self = Self(1);
56    #[doc(alias = "GLKTextureEnvModeDecal")]
57    pub const Decal: Self = Self(2);
58}
59
60#[cfg(feature = "objc2-open-gl")]
61#[cfg(target_os = "macos")]
62unsafe impl Encode for GLKTextureEnvMode {
63    const ENCODING: Encoding = GLint::ENCODING;
64}
65
66#[cfg(feature = "objc2-open-gl")]
67#[cfg(target_os = "macos")]
68unsafe impl RefEncode for GLKTextureEnvMode {
69    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
70}
71
72extern_class!(
73    /// [Apple's documentation](https://developer.apple.com/documentation/glkit/glkeffectpropertytexture?language=objc)
74    #[unsafe(super(GLKEffectProperty, NSObject))]
75    #[derive(Debug, PartialEq, Eq, Hash)]
76    #[cfg(feature = "GLKEffectProperty")]
77    pub struct GLKEffectPropertyTexture;
78);
79
80#[cfg(feature = "GLKEffectProperty")]
81extern_conformance!(
82    unsafe impl NSObjectProtocol for GLKEffectPropertyTexture {}
83);
84
85#[cfg(feature = "GLKEffectProperty")]
86impl GLKEffectPropertyTexture {
87    extern_methods!(
88        #[cfg(feature = "objc2-open-gl")]
89        #[cfg(target_os = "macos")]
90        #[unsafe(method(enabled))]
91        #[unsafe(method_family = none)]
92        pub unsafe fn enabled(&self) -> GLboolean;
93
94        #[cfg(feature = "objc2-open-gl")]
95        #[cfg(target_os = "macos")]
96        /// Setter for [`enabled`][Self::enabled].
97        #[unsafe(method(setEnabled:))]
98        #[unsafe(method_family = none)]
99        pub unsafe fn setEnabled(&self, enabled: GLboolean);
100
101        #[cfg(feature = "objc2-open-gl")]
102        #[cfg(target_os = "macos")]
103        #[unsafe(method(name))]
104        #[unsafe(method_family = none)]
105        pub unsafe fn name(&self) -> GLuint;
106
107        #[cfg(feature = "objc2-open-gl")]
108        #[cfg(target_os = "macos")]
109        /// Setter for [`name`][Self::name].
110        #[unsafe(method(setName:))]
111        #[unsafe(method_family = none)]
112        pub unsafe fn setName(&self, name: GLuint);
113
114        #[cfg(feature = "objc2-open-gl")]
115        #[cfg(target_os = "macos")]
116        #[unsafe(method(target))]
117        #[unsafe(method_family = none)]
118        pub unsafe fn target(&self) -> GLKTextureTarget;
119
120        #[cfg(feature = "objc2-open-gl")]
121        #[cfg(target_os = "macos")]
122        /// Setter for [`target`][Self::target].
123        #[unsafe(method(setTarget:))]
124        #[unsafe(method_family = none)]
125        pub unsafe fn setTarget(&self, target: GLKTextureTarget);
126
127        #[cfg(feature = "objc2-open-gl")]
128        #[cfg(target_os = "macos")]
129        #[unsafe(method(envMode))]
130        #[unsafe(method_family = none)]
131        pub unsafe fn envMode(&self) -> GLKTextureEnvMode;
132
133        #[cfg(feature = "objc2-open-gl")]
134        #[cfg(target_os = "macos")]
135        /// Setter for [`envMode`][Self::envMode].
136        #[unsafe(method(setEnvMode:))]
137        #[unsafe(method_family = none)]
138        pub unsafe fn setEnvMode(&self, env_mode: GLKTextureEnvMode);
139    );
140}
141
142/// Methods declared on superclass `NSObject`.
143#[cfg(feature = "GLKEffectProperty")]
144impl GLKEffectPropertyTexture {
145    extern_methods!(
146        #[unsafe(method(init))]
147        #[unsafe(method_family = init)]
148        pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
149
150        #[unsafe(method(new))]
151        #[unsafe(method_family = new)]
152        pub unsafe fn new() -> Retained<Self>;
153    );
154}