Skip to content

Commit

Permalink
Generate bindings for the OVR_multiview2 webgl extension (#2903)
Browse files Browse the repository at this point in the history
  • Loading branch information
expenses authored May 20, 2022
1 parent bea87f0 commit 63872ee
Show file tree
Hide file tree
Showing 4 changed files with 69 additions and 1 deletion.
3 changes: 2 additions & 1 deletion crates/web-sys/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -776,7 +776,7 @@ MediaStreamEventInit = []
MediaStreamTrack = ["EventTarget"]
MediaStreamTrackEvent = ["Event"]
MediaStreamTrackEventInit = []
MediaStreamTrackGenerator = []
MediaStreamTrackGenerator = ["EventTarget", "MediaStreamTrack"]
MediaStreamTrackGeneratorInit = []
MediaStreamTrackProcessor = []
MediaStreamTrackProcessorInit = []
Expand Down Expand Up @@ -856,6 +856,7 @@ OscillatorNode = ["AudioNode", "AudioScheduledSourceNode", "EventTarget"]
OscillatorOptions = []
OscillatorType = []
OverSampleType = []
OvrMultiview2 = []
PageTransitionEvent = ["Event"]
PageTransitionEventInit = []
PaintRequest = []
Expand Down
48 changes: 48 additions & 0 deletions crates/web-sys/src/features/gen_OvrMultiview2.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
#![allow(unused_imports)]
use super::*;
use wasm_bindgen::prelude::*;
#[wasm_bindgen]
extern "C" {
# [wasm_bindgen (extends = :: js_sys :: Object , js_name = OVR_multiview2 , typescript_type = "OVR_multiview2")]
#[derive(Debug, Clone, PartialEq, Eq)]
#[doc = "The `OvrMultiview2` class."]
#[doc = ""]
#[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/OVR_multiview2)"]
#[doc = ""]
#[doc = "*This API requires the following crate features to be activated: `OvrMultiview2`*"]
pub type OvrMultiview2;
#[cfg(feature = "WebGlTexture")]
# [wasm_bindgen (method , structural , js_class = "OVR_multiview2" , js_name = framebufferTextureMultiviewOVR)]
#[doc = "The `framebufferTextureMultiviewOVR()` method."]
#[doc = ""]
#[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/OVR_multiview2/framebufferTextureMultiviewOVR)"]
#[doc = ""]
#[doc = "*This API requires the following crate features to be activated: `OvrMultiview2`, `WebGlTexture`*"]
pub fn framebuffer_texture_multiview_ovr(
this: &OvrMultiview2,
target: u32,
attachment: u32,
texture: Option<&WebGlTexture>,
level: i32,
base_view_index: i32,
num_views: i32,
);
}
impl OvrMultiview2 {
#[doc = "The `OVR_multiview2.FRAMEBUFFER_ATTACHMENT_TEXTURE_NUM_VIEWS_OVR` const."]
#[doc = ""]
#[doc = "*This API requires the following crate features to be activated: `OvrMultiview2`*"]
pub const FRAMEBUFFER_ATTACHMENT_TEXTURE_NUM_VIEWS_OVR: u32 = 38448u64 as u32;
#[doc = "The `OVR_multiview2.FRAMEBUFFER_ATTACHMENT_TEXTURE_BASE_VIEW_INDEX_OVR` const."]
#[doc = ""]
#[doc = "*This API requires the following crate features to be activated: `OvrMultiview2`*"]
pub const FRAMEBUFFER_ATTACHMENT_TEXTURE_BASE_VIEW_INDEX_OVR: u32 = 38450u64 as u32;
#[doc = "The `OVR_multiview2.MAX_VIEWS_OVR` const."]
#[doc = ""]
#[doc = "*This API requires the following crate features to be activated: `OvrMultiview2`*"]
pub const MAX_VIEWS_OVR: u32 = 38449u64 as u32;
#[doc = "The `OVR_multiview2.FRAMEBUFFER_INCOMPLETE_VIEW_TARGETS_OVR` const."]
#[doc = ""]
#[doc = "*This API requires the following crate features to be activated: `OvrMultiview2`*"]
pub const FRAMEBUFFER_INCOMPLETE_VIEW_TARGETS_OVR: u32 = 38451u64 as u32;
}
6 changes: 6 additions & 0 deletions crates/web-sys/src/features/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -4954,6 +4954,12 @@ mod gen_OverSampleType;
#[cfg(feature = "OverSampleType")]
pub use gen_OverSampleType::*;

#[cfg(feature = "OvrMultiview2")]
#[allow(non_snake_case)]
mod gen_OvrMultiview2;
#[cfg(feature = "OvrMultiview2")]
pub use gen_OvrMultiview2::*;

#[cfg(feature = "PageTransitionEvent")]
#[allow(non_snake_case)]
mod gen_PageTransitionEvent;
Expand Down
13 changes: 13 additions & 0 deletions crates/web-sys/webidls/enabled/OVRMultiview2.webidl
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
/* -*- Mode: IDL; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
/*
* The source for this IDL is found at https://www.khronos.org/registry/webgl/extensions/OVR_multiview2/
*/
[Exposed=(Window,Worker), LegacyNoInterfaceObject]
interface OVR_multiview2 {
const GLenum FRAMEBUFFER_ATTACHMENT_TEXTURE_NUM_VIEWS_OVR = 0x9630;
const GLenum FRAMEBUFFER_ATTACHMENT_TEXTURE_BASE_VIEW_INDEX_OVR = 0x9632;
const GLenum MAX_VIEWS_OVR = 0x9631;
const GLenum FRAMEBUFFER_INCOMPLETE_VIEW_TARGETS_OVR = 0x9633;

undefined framebufferTextureMultiviewOVR(GLenum target, GLenum attachment, WebGLTexture? texture, GLint level, GLint baseViewIndex, GLsizei numViews);
};

0 comments on commit 63872ee

Please sign in to comment.