Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Generate bindings for the OVR_multiview2 webgl extension #2903

Merged
merged 1 commit into from
May 20, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
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);
};