/* * Copyright (c) 2021, Hunter Salyer * Copyright (c) 2022, Gregory Bertilson * * SPDX-License-Identifier: BSD-2-Clause */ #pragma once #include "Enums.h" #include "MotionVector.h" namespace Video::VP9 { template struct Pair { T a; T b; T& operator[](size_t index) { if (index == 0) return a; if (index == 1) return b; VERIFY_NOT_REACHED(); } }; typedef Pair ReferenceFramePair; typedef Pair MotionVectorPair; struct TokensContext { TXSize m_tx_size; bool m_is_uv_plane; bool m_is_inter; u8 m_band; u8 m_context_index; }; }