1 typedef struct
2 {
3   int mvd[2][(16/4)][(16/4)][2];
4 } Macroblock;
5 typedef struct
6 {
7   int part_size[8][2];
8 } InputParameters;
9 typedef struct
10 {
11   Macroblock *mb_data;
12   short****** pred_mv;
13   short****** all_mv;
14 } ImageParameters;
15 extern InputParameters *input;
16 extern ImageParameters *img;
writeMotionVector8x8(void)17 int writeMotionVector8x8 (void)
18 {
19   int i, j, k, l, m;
20   int step_h = input->part_size[7][0];
21   int step_v = input->part_size[7][1];
22   Macroblock* currMB = &img->mb_data[9];
23   int refindex = 0;
24   short****** all_mv = img->all_mv;
25   short****** pred_mv = img->pred_mv;
26 
27   for (k=0; k<2; k++)
28     {
29       int curr_mvd = all_mv[2][8][0][8][7][8] - pred_mv[2][7][0][8][7][0];
30       for (l=0; l < step_v; l++)
31         for (m=0; m < step_h; m++)
32           currMB->mvd[0][8][9][8] = curr_mvd;
33     }
34 }
35