import { EnumClass , EnumIO , _from } from '../misc/EnumIO' ; export type TextureParameterEnum = EnumIO ; class TextureParameterClass extends EnumClass implements TextureParameterEnum { constructor ( { index , str } ) { super ( { index , str } ) ; } } const Nearest = new TextureParameterClass ( { index : 0x2600 , str : 'NEAREST' , } ) ; const Linear = new TextureParameterClass ( { index : 0x2601 , str : 'LINEAR' , } ) ; const NearestMipmapNearest = new TextureParameterClass ( { index : 0x2700 , str : 'NEAREST_MIPMAP_NEAREST' , } ) ; const LinearMipmapNearest = new TextureParameterClass ( { index : 0x2701 , str : 'LINEAR_MIPMAP_NEAREST' , } ) ; const NearestMipmapLinear = new TextureParameterClass ( { index : 0x2702 , str : 'NEAREST_MIPMAP_LINEAR' , } ) ; const LinearMipmapLinear = new TextureParameterClass ( { index : 0x2703 , str : 'LINEAR_MIPMAP_LINEAR' , } ) ; const TextureMagFilter = new TextureParameterClass ( { index : 0x2800 , str : 'TEXTURE_MAG_FILTER' , } ) ; const TextureMinFilter = new TextureParameterClass ( { index : 0x2801 , str : 'TEXTURE_MIN_FILTER' , } ) ; const TextureWrapS = new TextureParameterClass ( { index : 0x2802 , str : 'TEXTURE_WRAP_S' , } ) ; const TextureWrapT = new TextureParameterClass ( { index : 0x2803 , str : 'TEXTURE_WRAP_T' , } ) ; const Texture2D = new TextureParameterClass ( { index : 0x0de1 , str : 'TEXTURE_2D' , } ) ; const Texture = new TextureParameterClass ( { index : 0x1702 , str : 'TEXTURE' , } ) ; const Texture0 = new TextureParameterClass ( { index : 0x84c0 , str : 'TEXTURE0' , } ) ; const Texture1 = new TextureParameterClass ( { index : 0x84c1 , str : 'TEXTURE1' , } ) ; const ActiveTexture = new TextureParameterClass ( { index : 0x84e0 , str : 'ACTIVE_TEXTURE' , } ) ; const Repeat = new TextureParameterClass ( { index : 0x2901 , str : 'REPEAT' , } ) ; const ClampToEdge = new TextureParameterClass ( { index : 0x812f , str : 'CLAMP_TO_EDGE' , } ) ; const MirroredRepeat = new TextureParameterClass ( { index : 0x8370 , str : 'MIRRORED_REPEAT' , } ) ; const RGB8 = new TextureParameterClass ( { index : 0x8051 , str : 'RGB8' , } ) ; const RGBA8 = new TextureParameterClass ( { index : 0x8058 , str : 'RGBA8' , } ) ; const RGB10_A2 = new TextureParameterClass ( { index : 0x8059 , str : 'RGB10_A2' , } ) ; const RGB16F = new TextureParameterClass ( { index : 0x881b , str : 'RGB16F' , } ) ; const RGB32F = new TextureParameterClass ( { index : 0x8815 , str : 'RGB32F' , } ) ; const RGBA16F = new TextureParameterClass ( { index : 0x881a , str : 'RGBA16F' , } ) ; const RGBA32F = new TextureParameterClass ( { index : 0x8814 , str : 'RGBA32F' , } ) ; const Depth16 = new TextureParameterClass ( { index : 0x81a5 , str : 'DEPTH_COMPONENT16' , } ) ; const Depth24 = new TextureParameterClass ( { index : 0x81a6 , str : 'DEPTH_COMPONENT24' , } ) ; const Depth32F = new TextureParameterClass ( { index : 0x8cac , str : 'DEPTH_COMPONENT32F' , } ) ; const Depth24Stencil8 = new TextureParameterClass ( { index : 0x88f0 , str : 'DEPTH24_STENCIL8' , } ) ; const Depth32FStencil8 = new TextureParameterClass ( { index : 0x8cad , str : 'DEPTH32F_STENCIL8' , } ) ; const typeList = [ Nearest , Linear , NearestMipmapNearest , LinearMipmapNearest , NearestMipmapLinear , LinearMipmapLinear , TextureMagFilter , TextureMinFilter , TextureWrapS , TextureWrapT , Texture2D , Texture , Texture0 , Texture1 , ActiveTexture , Repeat , ClampToEdge , MirroredRepeat , RGB8 , RGBA8 , RGB10_A2 , RGB16F , RGB32F , RGBA16F , RGBA32F , Depth16 , Depth24 , Depth32F , Depth24Stencil8 , Depth32FStencil8 , ] ; function from ( index ) { return _from ( { typeList , index } ) as TextureParameterEnum ; } export const TextureParameter = Object . freeze ( { Nearest , Linear , NearestMipmapNearest , LinearMipmapNearest , NearestMipmapLinear , LinearMipmapLinear , TextureMagFilter , TextureMinFilter , TextureWrapS , TextureWrapT , Texture2D , Texture , Texture0 , Texture1 , ActiveTexture , Repeat , ClampToEdge , MirroredRepeat , RGB8 , RGBA8 , RGB10_A2 , RGB16F , RGB32F , RGBA16F , RGBA32F , Depth16 , Depth24 , Depth32F , Depth24Stencil8 , Depth32FStencil8 , from , } ) ;