blob: 2deffebbae0a6d34d3bc35774b62e074ecdb669a [file] [log] [blame]
/*
* Copyright (c) 2016 The WebM project authors. All Rights Reserved.
*
* Use of this source code is governed by a BSD-style license
* that can be found in the LICENSE 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.
*/
/* The purpose of this header is to provide compile time pluggable bit writer
* implementations with a common interface. */
#ifndef AOM10_ENCODER_BITWRITER_H_
#define AOM10_ENCODER_BITWRITER_H_
#include "./aom_config.h"
#include "aom_dsp/prob.h"
#if CONFIG_ANS
typedef struct BufAnsCoder BufAnsCoder;
#include "av1/encoder/buf_ans.h"
#define aom_writer BufAnsCoder
#define aom_write buf_uabs_write
#define aom_write_bit buf_uabs_write_bit
#define aom_write_literal buf_uabs_write_literal
#else
#include "aom_dsp/bitwriter.h"
#define aom_writer aom_writer
#define aom_write aom_write
#define aom_write_bit aom_write_bit
#define aom_write_literal aom_write_literal
#endif
#endif // AOM10_ENCODER_BITWRITER_H_