alloc_mode_context(cm, num_4x4_blk, &tree->none);
alloc_mode_context(cm, num_4x4_blk/2, &tree->horizontal[0]);
alloc_mode_context(cm, num_4x4_blk/2, &tree->vertical[0]);
+#ifdef CONFIG_SUPERTX
+ alloc_mode_context(cm, num_4x4_blk, &tree->super_tx);
+#endif
if (num_4x4_blk > 4) {
alloc_mode_context(cm, num_4x4_blk/2, &tree->horizontal[1]);
free_mode_context(&tree->horizontal[1]);
free_mode_context(&tree->vertical[0]);
free_mode_context(&tree->vertical[1]);
+#ifdef CONFIG_SUPERTX
+ free_mode_context(&tree->super_tx);
+#endif
}
// This function sets up a tree of contexts such that at each square
struct PC_TREE *split[4];
PICK_MODE_CONTEXT *leaf_split[4];
};
+#ifdef CONFIG_SUPERTX
+ PICK_MODE_CONTEXT super_tx;
+#endif
} PC_TREE;
void vp10_setup_pc_tree(struct VP10Common *cm, struct ThreadData *td);
}
for (i = 0; i < MAX_MB_PLANE; ++i) {
- p[i].coeff = (&pc_tree->none)->coeff_pbuf[i][1];
- p[i].qcoeff = (&pc_tree->none)->qcoeff_pbuf[i][1];
- pd[i].dqcoeff = (&pc_tree->none)->dqcoeff_pbuf[i][1];
- p[i].eobs = (&pc_tree->none)->eobs_pbuf[i][1];
+ p[i].coeff = (&pc_tree->super_tx)->coeff_pbuf[i][1];
+ p[i].qcoeff = (&pc_tree->super_tx)->qcoeff_pbuf[i][1];
+ pd[i].dqcoeff = (&pc_tree->super_tx)->dqcoeff_pbuf[i][1];
+ p[i].eobs = (&pc_tree->super_tx)->eobs_pbuf[i][1];
}
}