@polygonjs/polygonjs
Version:
node-based WebGL 3D engine https://polygonjs.com
25 lines (24 loc) • 695 B
JavaScript
;
import { incrementRefSafely, ref } from "../../core/reactivity/CoreReactivity";
const refByIndex = /* @__PURE__ */ new Map();
export function getOrCreateWebXRTrackerRef(index) {
return getWebXRTrackerRef(index) || createWebXRTrackerRef(index);
}
export function getWebXRTrackerRef(index) {
return refByIndex.get(index);
}
export function createWebXRTrackerRef(index) {
let refForIndex = refByIndex.get(index);
if (!refForIndex) {
refForIndex = ref(0);
refByIndex.set(index, refForIndex);
}
return refForIndex;
}
export function touchWebXRTrackerRef(index) {
const _ref = getWebXRTrackerRef(index);
if (!_ref) {
return;
}
incrementRefSafely(_ref);
}