gpu_mjpeg_decode_accelerator_factory.h 1.0 KB

1234567891011121314151617181920212223242526272829303132
  1. // Copyright 2017 The Chromium Authors. All rights reserved.
  2. // Use of this source code is governed by a BSD-style license that can be
  3. // found in the LICENSE file.
  4. #ifndef COMPONENTS_CHROMEOS_CAMERA_GPU_MJPEG_DECODE_ACCELERATOR_FACTORY_H_
  5. #define COMPONENTS_CHROMEOS_CAMERA_GPU_MJPEG_DECODE_ACCELERATOR_FACTORY_H_
  6. #include "base/memory/ref_counted.h"
  7. #include "components/chromeos_camera/mjpeg_decode_accelerator.h"
  8. namespace base {
  9. class SingleThreadTaskRunner;
  10. }
  11. namespace chromeos_camera {
  12. class GpuMjpegDecodeAcceleratorFactory {
  13. public:
  14. using CreateAcceleratorCB =
  15. base::OnceCallback<std::unique_ptr<MjpegDecodeAccelerator>(
  16. scoped_refptr<base::SingleThreadTaskRunner>)>;
  17. // Static query for JPEG supported. This query calls the appropriate
  18. // platform-specific version.
  19. static bool IsAcceleratedJpegDecodeSupported();
  20. static std::vector<CreateAcceleratorCB> GetAcceleratorFactories();
  21. };
  22. } // namespace chromeos_camera
  23. #endif // COMPONENTS_CHROMEOS_CAMERA_GPU_MJPEG_DECODE_ACCELERATOR_FACTORY_H_