UNPKG

@openhps/core

Version:

Open Hybrid Positioning System - Core component

60 lines (54 loc) 1.46 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _StorageBuffer = _interopRequireDefault(require("../StorageBuffer.js")); var _constants = require("../../../nodes/core/constants.js"); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } let _id = 0; /** * A special form of storage buffer binding type. * It's buffer value is managed by a node object. * * @private * @augments StorageBuffer */ class NodeStorageBuffer extends _StorageBuffer.default { /** * Constructs a new node-based storage buffer. * * @param {StorageBufferNode} nodeUniform - The storage buffer node. * @param {UniformGroupNode} groupNode - The uniform group node. */ constructor(nodeUniform, groupNode) { super('StorageBuffer_' + _id++, nodeUniform ? nodeUniform.value : null); /** * The node uniform. * * @type {StorageBufferNode} */ this.nodeUniform = nodeUniform; /** * The access type. * * @type {string} */ this.access = nodeUniform ? nodeUniform.access : _constants.NodeAccess.READ_WRITE; /** * The uniform group node. * * @type {UniformGroupNode} */ this.groupNode = groupNode; } /** * The storage buffer. * * @type {BufferAttribute} */ get buffer() { return this.nodeUniform.value; } } var _default = exports.default = NodeStorageBuffer;