h&'!I      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~  Safe-Inferred"%&'-3;8 ktx-codecA wrapper for raw data.Use  FromValue/ToValue to process. ktx-codec0Extract all valid (null-terminated utf8) values.   Safe-Inferred"%&'-3;.! "$#%('&)*876543210/.,-9+:><=;?@ABCDEFGHI.?@ABC:><=;*876543210/.,-9+DE)%('&"$#! FGHI Safe-Inferred"%&'-3;8 X^][Z\Y_ba` _ba`X^][Z\Y Safe-Inferred"%&'-3; v ktx-codecA basic descriptor block is designed to encode common metadata associated with bulk data@@@especially image or texture data.While this descriptor holds more information about the data interpretation than is needed by many applications, a comprehensive encoding reduces the risk of metadata needed by different APIs being lost in translation.The format is described in terms of a repeating axis-aligned texel block composed of samples. Each sample contains a single channel of information with a single spatial offset within the texel block, and consists of an amount of contiguous data. This descriptor block consists of information about the interpretation of the texel block as a whole, supplemented by a description of a number of samples taken from one or more planes of contiguous memory. https://registry.khronos.org/DataFormat/specs/1.3/dataformat.1.3.html| ktx-codecThe value held in each of these fields is one fewer than the size of the block in that dimension@@@ that is, a value of 0 represents a size of 1, a value of 1 represents a size of 2, etc.A texel block which covers fewer than four dimensions should have a size of 1 in each dimension that it lacks, and therefore the corresponding fields in the representation should be 0. ktx-codecKDF v1.3 ktx-codecBasic DFD Block ktx-codecKhronoskutsrqponmlv~}|{zyxwv~}|{zyxwkutsrqponml Safe-Inferred"%&'-3;-  ktx-codec(Specifies the image format using Vulkan VkFormat enum values. It can be any value defined in core Vulkan 1.2, future core versions or registered Vulkan extensions, except for values listed in Table 1, @Prohibited Formats@ and any *SCALED* or  *[2-9]PLANE* formats added in future. ktx-codecSpecifies the size of the data type in bytes used to upload the data to a graphics API. When typeSize is greater than 1, software on big-endian systems must endian convert all image data since it is little-endian. When format is VK_FORMAT_UNDEFINED, typeSize must equal 1. ktx-codecSpecifies the number of array elements. If the texture is not an array texture,  layerCount must equal 0. ktx-codecIf  faceCount is equal to 6,  pixelHeight must be equal to  pixelWidth, and  pixelDepth must be 0. ktx-codecSpecifies the number of levels in the Mip Level Array and, by extension, the number of indices in the Level Index array. A KTX file does not need to contain a complete mipmap pyramid. ktx-codecIndicates if a supercompression scheme has been applied to the data in levelImages. It must be one of the values from Table 2, @Supercompression Schemes@. A value of 0 indicates no supercompression. ktx-codec-The offset from the start of the file of the  dfdTotalSize% field of the Data Format Descriptor. ktx-codecThe total number of bytes in the Data Format Descriptor including the  dfdTotalSize field.  dfdByteLength must equal  dfdTotalSize. ktx-codecAn arbitrary number of keyvalue pairs may follow the Index. These can be used to encode any arbitrary data. The kvdByteOffset field gives the offset of this data, i.e. that of first keyvalue pair, from the start of the file. The value must be 0 when kvdByteLength = 0. ktx-codecThe total number of bytes of key/value data including all keyAndValueByteLength fields, all keyAndValue fields and all valuePadding fields. ktx-codecThe offset from the start of the file of supercompressionGlobalData. The value must be 0 when sgdByteLength = 0. ktx-codecThe number of bytes of supercompressionGlobalData. For supercompression schemes for which no reference is provided in the Global Data Format column of Table 2, @Supercompression Schemes@. the value must be 0. Safe-Inferred"%&'-3; ktx-codecThe offset from the start of the file of the first byte of image data for mip level. It is the offset of the first byte after any  mipPadding. ktx-codec9The total size of the data for supercompressed mip level. ktx-codecthe number of bytes of pixel data in LOD level after reflation from supercompression. This includes all z slices, all faces, all rows (or rows of blocks) and all pixels (or blocks) in each row for the mipmap level. When supercompressionScheme == 0,  byteLength( must have the same value as this. When supercompressionScheme == 1 (BasisLZ) the value must be 0. ktx-codec$Build a level index from level data.9Levels should be placed from largest (mip 0) to smallest. Safe-Inferred"%&'-3; U  ktx-codecGet a chunk of data.The context handle must have enough information to check whether requested region is safe to access. Throw  ChunkError0 when it isn't possible to fullfill the request. ktx-codecContext for reading from memory. Useful when the data is embedded in a module or otherwise already available in full. ktx-codec=Context for reading from a file. The file has to be seekable. ktx-codecA bundle of source data and header information used by reader functions. ktx-codecRead the level index. ktx-codec(Copy level data into a provided pointer.(The buffer must be large enough for the  of the Level being accessed. ktx-codec&Copy level data into a managed buffer. ktx-codecRead DFD block data.>Further processing is performed according to descriptor vendortypeversion. E.g. Codec.Ktx2.DFD.Khronos.BasicV2. ktx-codec$Read and parse Key-Value Data block. ktx-codec+Get a copy of global supercompression data. ktx-codec,Get a chunk of data and run a decoder on it. Safe-Inferred"%&'-3;   Safe-Inferred"%&'-3;!4      !"#$%%&''())*++,-.//0123456789:;<=>>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[[\]^_`aabcdefghijkllmnopqrstuvvwxyz{|}~//789HMYZ?F        (ktx-codec-0.0.2.1-AFX5voQ2mUt7MGimSGTUauCodec.Ktx.KeyValue Codec.KtxCodec.Ktx2.DFDCodec.Ktx2.DFD.Khronos.BasicV2Codec.Ktx2.HeaderCodec.Ktx2.LevelCodec.Ktx2.ReadCodec.Ktx2.WritePaths_ktx_codec FromValue fromValueValue KeyValueData KTXanimDataKTXastcDecodeModeKTXwriterScParams KTXwriter KTXswizzleKTXmetalPixelFormatKTXdxgiFormat__ KTXglFormatKTXorientationKTXcubemapIncompletetextbytesnumbertextual getDataLegetData putDataLeputData$fFromValueByteString$fFromValueText $fEqValue $fShowValue$fGenericValueZSliceblockFacezSlices ArrayElementfacesMipLevel imageSize arrayElements MipLevelsHeader identifier endiannessglType glTypeSizeglFormatglInternalFormatglBaseInternalFormat pixelWidth pixelHeight pixelDepthnumberOfArrayElements numberOfFacesnumberOfMipmapLevelsbytesOfKeyValueDataKtxheaderkvsimagesfromByteStringLazyfromByteStringfromFile toBuildertoFile endiannessLEcanonicalIdentifier getImages putImages mkGetWord32 mkPutWord32$fBinaryHeader $fShowZSlice $fBinaryKtx $fShowKtx $fGenericKtx$fShowMipLevel$fGenericMipLevel$fShowArrayElement$fGenericArrayElement $fShowFace $fGenericFace$fGenericZSlice $fShowHeader$fGenericHeaderBlockdescriptorTypevendorIddescriptorBlockSize versionNumberbodyDFD dfdTotalSize dfdBlocks $fBinaryBlock $fBinaryDFD$fEqDFD $fShowDFD $fGenericDFD $fEqBlock $fShowBlock$fGenericBlockSample bitOffset bitLength channelTypesamplePosition0samplePosition1samplePosition2samplePosition3 sampleLower sampleUpperBasicV2 colorModelcolorPrimariestransferFunctionflagstexelBlockDimension0texelBlockDimension1texelBlockDimension2texelBlockDimension3 bytesPlane0 bytesPlane1 bytesPlane2 bytesPlane3 bytesPlane4 bytesPlane5 bytesPlane6 bytesPlane7samplesKHR_DF_SAMPLE_DATATYPE_LINEARKHR_DF_SAMPLE_DATATYPE_EXPONENTKHR_DF_SAMPLE_DATATYPE_SIGNEDKHR_DF_SAMPLE_DATATYPE_FLOATKHR_DF_FLAG_ALPHA_PREMULTIPLIEDKHR_DF_FLAG_ALPHA_STRAIGHTKHR_DF_TRANSFER_ADOBERGBKHR_DF_TRANSFER_ACESCCTKHR_DF_TRANSFER_ACESCCKHR_DF_TRANSFER_ST240KHR_DF_TRANSFER_PAL625_EOTFKHR_DF_TRANSFER_PAL_OETFKHR_DF_TRANSFER_DCIP3KHR_DF_TRANSFER_PQ_OETFKHR_DF_TRANSFER_PQ_EOTFKHR_DF_TRANSFER_HLG_EOTFKHR_DF_TRANSFER_HLG_OETFKHR_DF_TRANSFER_BT1886KHR_DF_TRANSFER_SLOG2KHR_DF_TRANSFER_SLOGKHR_DF_TRANSFER_NTSCKHR_DF_TRANSFER_ITUKHR_DF_TRANSFER_SRGBKHR_DF_TRANSFER_LINEARKHR_DF_TRANSFER_UNSPECIFIEDKHR_DF_PRIMARIES_ADOBERGBKHR_DF_PRIMARIES_DISPLAYP3KHR_DF_PRIMARIES_PAL525KHR_DF_PRIMARIES_NTSC1953KHR_DF_PRIMARIES_ACESCCKHR_DF_PRIMARIES_ACESKHR_DF_PRIMARIES_CIEXYZKHR_DF_PRIMARIES_BT2020KHR_DF_PRIMARIES_BT601_SMPTEKHR_DF_PRIMARIES_BT601_EBUKHR_DF_PRIMARIES_SRGBKHR_DF_PRIMARIES_BT709KHR_DF_PRIMARIES_UNSPECIFIEDKHR_DF_MODEL_PVRTC2KHR_DF_MODEL_PVRTCKHR_DF_MODEL_ETC1SKHR_DF_MODEL_ASTC2KHR_DF_MODEL_ETC2KHR_DF_MODEL_ETC1KHR_DF_MODEL_BC7KHR_DF_MODEL_BC6HKHR_DF_MODEL_BC5KHR_DF_MODEL_BC4KHR_DF_MODEL_BC3KHR_DF_MODEL_DXT5KHR_DF_MODEL_DXT4KHR_DF_MODEL_BC2KHR_DF_MODEL_DXT3KHR_DF_MODEL_DXT2KHR_DF_MODEL_BC1AKHR_DF_MODEL_DXT1AKHR_DF_MODEL_CIEXYYKHR_DF_MODEL_CIEXYZKHR_DF_MODEL_ICTCPKHR_DF_MODEL_YCCBCCRCKHR_DF_MODEL_YCGCOAKHR_DF_MODEL_HSLA_HEXKHR_DF_MODEL_HSVA_HEXKHR_DF_MODEL_HSLA_ANGKHR_DF_MODEL_HSVA_ANGKHR_DF_MODEL_XYZWKHR_DF_MODEL_CMYKAKHR_DF_MODEL_LABSDAKHR_DF_MODEL_YIQSDAKHR_DF_MODEL_YUVSDAKHR_DF_MODEL_RGBSDAKHR_DF_MODEL_UNSPECIFIEDVERSIONDESCRIPTOR_TYPE VENDOR_IDgetterputter fromBlocktoBlock unspecified$fBinarySample $fEqBasicV2 $fShowBasicV2$fGenericBasicV2 $fEqSample $fShowSample$fGenericSamplevkFormattypeSize layerCount faceCount levelCountsupercompressionScheme dfdByteOffset dfdByteLength kvdByteOffset kvdByteLength sgdByteOffset sgdByteLengthSC_ZLIB SC_ZSTANDARD SC_BASISLZSC_NONEprepare $fEqHeaderLevel byteOffset byteLengthuncompressedByteLengthindex $fBinaryLevel $fEqLevel $fShowLevel$fGenericLevel ReadLevel readLevelTo DecodeError ChunkError ReadChunk readChunkAt BytesContext FileContextContextcontextopencloselevels levelToPtr levelDatadataFormatDescriptor keyValueDatasupercompressionGlobalDatadecodeAt $fShowContext$fShowContext0$fReadChunkHandle$fExceptionChunkError$fReadChunkByteString$fExceptionDecodeError$fReadLevelByteString$fReadLevelHandle$fEqDecodeError$fShowDecodeError$fEqChunkError$fShowChunkErrortoChunksversiongetDataFileName getBinDir getLibDir getDynLibDir getDataDir getLibexecDir getSysconfDir