text: import WebGLConstants from "../Core/WebGLConstants.js";
  
  /**
   * @private
   */
  var PixelDatatype = {
    UNSIGNED_BYTE: WebGLConstants.UNSIGNED_BYTE,
    UNSIGNED_SHORT: WebGLConstants.UNSIGNED_SHORT,
    UNSIGNED_INT: WebGLConstants.UNSIGNED_INT,
    FLOAT: WebGLConstants.FLOAT,
    HALF_FLOAT: WebGLConstants.HALF_FLOAT_OES,
    UNSIGNED_INT_24_8: WebGLConstants.UNSIGNED_INT_24_8,
    UNSIGNED_SHORT_4_4_4_4: WebGLConstants.UNSIGNED_SHORT_4_4_4_4,
    UNSIGNED_SHORT_5_5_5_1: WebGLConstants.UNSIGNED_SHORT_5_5_5_1,
    UNSIGNED_SHORT_5_6_5: WebGLConstants.UNSIGNED_SHORT_5_6_5,
  
    isPacked: function (pixelDatatype) {
      return (
        pixelDatatype === PixelDatatype.UNSIGNED_INT_24_8 ||
        pixelDatatype === PixelDatatype.UNSIGNED_SHORT_4_4_4_4 ||
        pixelDatatype === PixelDatatype.UNSIGNED_SHORT_5_5_5_1 ||
        pixelDatatype === PixelDatatype.UNSIGNED_SHORT_5_6_5
      );
    },
  
    sizeInBytes: function (pixelDatatype) {
      switch (pixelDatatype) {
        case PixelDatatype.UNSIGNED_BYTE:
          return 1;
        case PixelDatatype.UNSIGNED_SHORT:
        case PixelDatatype.UNSIGNED_SHORT_4_4_4_4:
        case PixelDatatype.UNSIGNED_SHORT_5_5_5_1:
        case PixelDatatype.UNSIGNED_SHORT_5_6_5:
        case PixelDatatype.HALF_FLOAT:
          return 2;
        case PixelDatatype.UNSIGNED_INT:
        case PixelDatatype.FLOAT:
        case PixelDatatype.UNSIGNED_INT_24_8:
          return 4;
      }
    },
  
    validate: function (pixelDatatype) {
      return (
        pixelDatatype === PixelDatatype.UNSIGNED_BYTE ||
        pixelDatatype === PixelDatatype.UNSIGNED_SHORT ||
        pixelDatatype === PixelDatatype.UNSIGNED_INT ||
        pixelDatatype === PixelDatatype.FLOAT ||
        pixelDatatype === PixelDatatype.HALF_FLOAT ||
        pixelDatatype === PixelDatatype.UNSIGNED_INT_24_8 ||
        pixelDatatype === PixelDatatype.UNSIGNED_SHORT_4_4_4_4 ||
        pixelDatatype === PixelDatatype.UNSIGNED_SHORT_5_5_5_1 ||
        pixelDatatype === PixelDatatype.UNSIGNED_SHORT_5_6_5
      );
    },
  };
  export default Object.freeze(PixelDatatype);
  