• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright 2023 Google LLC
3  *
4  * Use of this source code is governed by a BSD-style license that can be
5  * found in the LICENSE file.
6  */
7 
8 #ifndef SkPngEncoderImpl_DEFINED
9 #define SkPngEncoderImpl_DEFINED
10 
11 #include "include/encode/SkEncoder.h"
12 
13 #include <memory>
14 
15 class SkPixmap;
16 class SkPngEncoderMgr;
17 
18 class SkPngEncoderImpl : public SkEncoder {
19 public:
20     // public so it can be called from SkPngEncoder namespace. It should only be made
21     // via SkPngEncoder::Make
22     SkPngEncoderImpl(std::unique_ptr<SkPngEncoderMgr>, const SkPixmap& src);
23     ~SkPngEncoderImpl() override;
24 
25 protected:
26     bool onEncodeRows(int numRows) override;
27     std::unique_ptr<SkPngEncoderMgr> fEncoderMgr;
28 };
29 #endif
30