| // Copyright 2020 The PDFium Authors |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com |
| |
| #include "core/fxcodec/bmp/bmp_progressive_decoder.h" |
| |
| #include "core/fxcodec/bmp/bmp_decoder.h" |
| #include "core/fxcodec/cfx_codec_memory.h" |
| #include "core/fxcrt/check.h" |
| |
| namespace fxcodec { |
| |
| namespace { |
| |
| BmpProgressiveDecoder* g_bmp_decoder = nullptr; |
| |
| } // namespace |
| |
| // static |
| void BmpProgressiveDecoder::InitializeGlobals() { |
| CHECK(!g_bmp_decoder); |
| g_bmp_decoder = new BmpProgressiveDecoder(); |
| } |
| |
| // static |
| void BmpProgressiveDecoder::DestroyGlobals() { |
| delete g_bmp_decoder; |
| g_bmp_decoder = nullptr; |
| } |
| |
| // static |
| BmpProgressiveDecoder* BmpProgressiveDecoder::GetInstance() { |
| return g_bmp_decoder; |
| } |
| |
| BmpProgressiveDecoder::BmpProgressiveDecoder() = default; |
| |
| BmpProgressiveDecoder::~BmpProgressiveDecoder() = default; |
| |
| FX_FILESIZE BmpProgressiveDecoder::GetAvailInput(Context* context) const { |
| return BmpDecoder::GetAvailInput(context); |
| } |
| |
| bool BmpProgressiveDecoder::Input(Context* context, |
| RetainPtr<CFX_CodecMemory> codec_memory) { |
| return BmpDecoder::Input(context, codec_memory); |
| } |
| |
| } // namespace fxcodec |