Source: core/core.pack.js

/**
 * Packing functions.
 *
 * @module core/pack */

export default class Pack {
  /**
   *
   */
  // static packTo8BitsTexture(bits, channels, frame, textureSize, startVoxel, stopVoxel) {
  //   let packed = {
  //     textureType: null,
  //     data: null
  //   };
  //   let packIndex = 0;
  //   let frameIndex = 0;
  //   let inFrameIndex = 0;
  //   let frameDimension = frame[0].rows * frame[0].columns;
  //   let data = null;
  //   if (bits === 8 && channels === 1) {
  //     let data = new Uint8Array(textureSize * textureSize * 1);
  //     for (let i = startVoxel; i < stopVoxel; i++) {
  //       /*jshint bitwise: false*/
  //       frameIndex = ~~(i / frameDimension);
  //       inFrameIndex = i % (frameDimension);
  //       /*jshint bitwise: true*/
  //       data[packIndex] = frame[frameIndex].pixelData[inFrameIndex];
  //       packIndex++;
  //     }
  //     packed.textureType = THREE.RGBFormat;
  //     packed.data = data;
  //   } else if (bits === 16 && channels === 1) {
  //     let data = new Uint8Array(textureSize * textureSize * 2);
  //     for (let i = startVoxel; i < stopVoxel; i++) {
  //       /*jshint bitwise: false*/
  //       frameIndex = ~~(i / frameDimension);
  //       inFrameIndex = i % (frameDimension);
  //       /*jshint bitwise: true*/
  //       // slow!
  //       //let asb = VJS.core.pack.uint16ToAlphaLuminance(frame[frameIndex].pixelData[inFrameIndex]);
  //       let raw = frame[frameIndex].pixelData[inFrameIndex];
  //       /*jshint bitwise: false*/
  //       let lsb = raw & 0x00FF;
  //       let msb = (raw >>> 8) & 0x00FF;
  //       /*jshint bitwise: true*/
  //       data[2 * packIndex] = lsb;
  //       data[2 * packIndex + 1] = msb;
  //       packIndex++;
  //     }
  //     packed.textureType = THREE.LuminanceAlphaFormat;
  //     packed.data = data;
  //   } else if (bits === 32 && channels === 1) {
  //     let data = new Uint8Array(textureSize * textureSize * 4);
  //     for (let i = startVoxel; i < stopVoxel; i++) {
  //       /*jshint bitwise: false*/
  //       frameIndex = ~~(i / frameDimension);
  //       inFrameIndex = i % (frameDimension);
  //       /*jshint bitwise: true*/
  //       // slow!
  //       //let asb = VJS.core.pack.uint16ToAlphaLuminance(frame[frameIndex].pixelData[inFrameIndex]);
  //       let raw = frame[frameIndex].pixelData[inFrameIndex];
  //       /*jshint bitwise: false*/
  //       let b0 = raw & 0x000000FF;
  //       let b1 = (raw >>> 8) & 0x000000FF;
  //       let b2 = (raw >>> 8) & 0x000000FF;
  //       let b3 = (raw >>> 8) & 0x000000FF;
  //       // let lsb1 = raw & 0xFF;
  //       // let msb1 = (raw >> 8) & 0xFF;
  //       /*jshint bitwise: true*/
  //       data[4 * packIndex] = b0;
  //       data[4 * packIndex + 1] = b1;
  //       data[4 * packIndex + 2] = b2;
  //       data[4 * packIndex + 3] = b3;
  //       packIndex++;
  //     }
  //     packed.textureType = THREE.RGBAFormat;
  //     packed.data = data;
  //   } else if (bits === 8 && channels === 3) {
  //     let data = new Uint8Array(textureSize * textureSize * 3);
  //     for (let i = startVoxel; i < stopVoxel; i++) {
  //       /*jshint bitwise: false*/
  //       frameIndex = ~~(i / frameDimension);
  //       inFrameIndex = i % (frameDimension);
  //       /*jshint bitwise: true*/
  //       data[3 * packIndex] = frame[frameIndex].pixelData[3 * inFrameIndex];
  //       data[3 * packIndex + 1] = frame[frameIndex].pixelData[3 * inFrameIndex + 1];
  //       data[3 * packIndex + 2] = frame[frameIndex].pixelData[3 * inFrameIndex + 2];
  //       packIndex++;
  //     }
  //     packed.textureType = THREE.LuminanceFormat;
  //     packed.data = data;
  //   }
  //   return packed;
  // }
}

// 'use strict';

// var VJS = VJS || {};
// VJS.core = VJS.core || {};

// /**
//  * @constructor
//  * @class
//  * @memberOf VJS.core
//  * @public
// */
// VJS.core.pack = VJS.core.pack || {};

// // Deal with endianess
// // do not add a if there af is is slow in bog loops
// // add more functions
// VJS.core.pack.uint16ToAlphaLuminance = function(uint16, ab) {
//   /*jshint bitwise: false*/
//   var lsb = uint16 & 0xFF;
//   var msb = (uint16 >> 8) & 0xFF;
//   /*jshint bitwise: true*/
//   ab = [lsb, msb];
// };

// VJS.core.pack.uint8ToLuminance = function(uint8) {
//   return uint8;
// };

// VJS.core.pack.uint8V3ToRGB = function(uint8V3) {
//   return uint8V3;
// };

// /*** Exports ***/

// var moduleType = typeof module;
// if ((moduleType !== 'undefined') && module.exports) {
//   module.exports = VJS.core.pack;
// }