chromium/third_party/blink/renderer/platform/image-decoders/ico/ico_image_decoder.cc

// Copyright 2008 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#ifdef UNSAFE_BUFFERS_BUILD
// TODO(crbug.com/351564777): Remove this and convert code to safer constructs.
#pragma allow_unsafe_buffers
#endif

#include "third_party/blink/renderer/platform/image-decoders/ico/ico_image_decoder.h"

#include <algorithm>
#include "third_party/blink/renderer/platform/image-decoders/png/png_image_decoder.h"

namespace blink {

// Number of bits in .ICO/.CUR used to store the directory and its entries,
// respectively (doesn't match sizeof values for member structs since we omit
// some fields).
static const wtf_size_t kSizeOfDirectory =;
static const wtf_size_t kSizeOfDirEntry =;

ICOImageDecoder::ICOImageDecoder(AlphaOption alpha_option,
                                 ColorBehavior color_behavior,
                                 wtf_size_t max_decoded_bytes)
    :{}

ICOImageDecoder::~ICOImageDecoder() = default;

String ICOImageDecoder::FilenameExtension() const {}

const AtomicString& ICOImageDecoder::MimeType() const {}

void ICOImageDecoder::OnSetData(scoped_refptr<SegmentReader> data) {}

gfx::Size ICOImageDecoder::Size() const {}

gfx::Size ICOImageDecoder::FrameSizeAtIndex(wtf_size_t index) const {}

bool ICOImageDecoder::SetSize(unsigned width, unsigned height) {}

bool ICOImageDecoder::FrameIsReceivedAtIndex(wtf_size_t index) const {}

bool ICOImageDecoder::SetFailed() {}

bool ICOImageDecoder::HotSpot(gfx::Point& hot_spot) const {}

bool ICOImageDecoder::HotSpotAtIndex(wtf_size_t index,
                                     gfx::Point& hot_spot) const {}

// static
bool ICOImageDecoder::CompareEntries(const IconDirectoryEntry& a,
                                     const IconDirectoryEntry& b) {}

void ICOImageDecoder::DecodeSize() {}

wtf_size_t ICOImageDecoder::DecodeFrameCount() {}

void ICOImageDecoder::Decode(wtf_size_t index) {}

void ICOImageDecoder::SetDataForPNGDecoderAtIndex(wtf_size_t index) {}

void ICOImageDecoder::Decode(wtf_size_t index, bool only_size) {}

bool ICOImageDecoder::DecodeDirectory() {}

bool ICOImageDecoder::DecodeAtIndex(wtf_size_t index) {}

bool ICOImageDecoder::ProcessDirectory() {}

bool ICOImageDecoder::ProcessDirectoryEntries() {}

ICOImageDecoder::IconDirectoryEntry ICOImageDecoder::ReadDirectoryEntry() {}

ICOImageDecoder::ImageType ICOImageDecoder::ImageTypeAtIndex(wtf_size_t index) {}

}  // namespace blink