1 /*
2  * Copyright (c) 2016, Alliance for Open Media. All rights reserved
3  *
4  * This source code is subject to the terms of the BSD 2 Clause License and
5  * the Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License
6  * was not distributed with this source code in the LICENSE file, you can
7  * obtain it at www.aomedia.org/license/software. If the Alliance for Open
8  * Media Patent License 1.0 was not distributed with this source code in the
9  * PATENTS file, you can obtain it at www.aomedia.org/license/patent.
10  */
11 
12 #ifndef AOM_AV1_ENCODER_MBGRAPH_H_
13 #define AOM_AV1_ENCODER_MBGRAPH_H_
14 
15 #ifdef __cplusplus
16 extern "C" {
17 #endif
18 
19 typedef struct {
20   struct {
21     int err;
22     union {
23       int_mv mv;
24       PREDICTION_MODE mode;
25     } m;
26   } ref[REF_FRAMES];
27 } MBGRAPH_MB_STATS;
28 
29 typedef struct {
30   MBGRAPH_MB_STATS *mb_stats;
31 } MBGRAPH_FRAME_STATS;
32 
33 struct AV1_COMP;
34 
35 void av1_update_mbgraph_stats(struct AV1_COMP *cpi);
36 
37 #ifdef __cplusplus
38 }  // extern "C"
39 #endif
40 
41 #endif  // AOM_AV1_ENCODER_MBGRAPH_H_
42