godot/thirdparty/libwebp/src/webp/format_constants.h

// Copyright 2012 Google Inc. All Rights Reserved.
//
// Use of this source code is governed by a BSD-style license
// that can be found in the COPYING file in the root of the source
// tree. An additional intellectual property rights grant can be found
// in the file PATENTS. All contributing project authors may
// be found in the AUTHORS file in the root of the source tree.
// -----------------------------------------------------------------------------
//
//  Internal header for constants related to WebP file format.
//
// Author: Urvang ([email protected])

#ifndef WEBP_WEBP_FORMAT_CONSTANTS_H_
#define WEBP_WEBP_FORMAT_CONSTANTS_H_

// Create fourcc of the chunk from the chunk tag characters.
#define MKFOURCC(a, b, c, d)

// VP8 related constants.
#define VP8_SIGNATURE
#define VP8_MAX_PARTITION0_SIZE
#define VP8_MAX_PARTITION_SIZE
#define VP8_FRAME_HEADER_SIZE

// VP8L related constants.
#define VP8L_SIGNATURE_SIZE
#define VP8L_MAGIC_BYTE
#define VP8L_IMAGE_SIZE_BITS
                                            // width and height.
#define VP8L_VERSION_BITS
#define VP8L_VERSION
#define VP8L_FRAME_HEADER_SIZE

#define MAX_PALETTE_SIZE
#define MAX_CACHE_BITS
#define HUFFMAN_CODES_PER_META_CODE
#define ARGB_BLACK

#define DEFAULT_CODE_LENGTH
#define MAX_ALLOWED_CODE_LENGTH

#define NUM_LITERAL_CODES
#define NUM_LENGTH_CODES
#define NUM_DISTANCE_CODES
#define CODE_LENGTH_CODES

#define MIN_HUFFMAN_BITS
#define MAX_HUFFMAN_BITS

#define TRANSFORM_PRESENT
                                        // to be read is a transform.
#define NUM_TRANSFORMS
                                        // in a bitstream.
VP8LImageTransformType;

// Alpha related constants.
#define ALPHA_HEADER_LEN
#define ALPHA_NO_COMPRESSION
#define ALPHA_LOSSLESS_COMPRESSION
#define ALPHA_PREPROCESSED_LEVELS

// Mux related constants.
#define TAG_SIZE
#define CHUNK_SIZE_BYTES
#define CHUNK_HEADER_SIZE
#define RIFF_HEADER_SIZE
#define ANMF_CHUNK_SIZE
#define ANIM_CHUNK_SIZE
#define VP8X_CHUNK_SIZE

#define MAX_CANVAS_SIZE
#define MAX_IMAGE_AREA
#define MAX_LOOP_COUNT
#define MAX_DURATION
#define MAX_POSITION_OFFSET

// Maximum chunk payload is such that adding the header and padding won't
// overflow a uint32_t.
#define MAX_CHUNK_PAYLOAD

#endif  // WEBP_WEBP_FORMAT_CONSTANTS_H_