/*
 *  Copyright 2019 The WebRTC 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.
 */

#ifndef SDK_ANDROID_SRC_JNI_VIDEODECODERFACTORYWRAPPER_H_
#define SDK_ANDROID_SRC_JNI_VIDEODECODERFACTORYWRAPPER_H_

// TODO(bugs.webrtc.org/10159): Remove this files once downstream projects have
// been updated to include the new path.

#include "sdk/android/src/jni/video_decoder_factory_wrapper.h"

#endif  // SDK_ANDROID_SRC_JNI_VIDEODECODERFACTORYWRAPPER_H_
