Coverage Report

Created: 2021-08-22 09:07

/src/skia/third_party/externals/dng_sdk/source/dng_jpeg_image.h
Line
Count
Source (jump to first uncovered line)
1
/*****************************************************************************/
2
// Copyright 2011 Adobe Systems Incorporated
3
// All Rights Reserved.
4
//
5
// NOTICE:  Adobe permits you to use, modify, and distribute this file in
6
// accordance with the terms of the Adobe license agreement accompanying it.
7
/*****************************************************************************/
8
9
/* $Id: //mondo/dng_sdk_1_4/dng_sdk/source/dng_jpeg_image.h#1 $ */ 
10
/* $DateTime: 2012/05/30 13:28:51 $ */
11
/* $Change: 832332 $ */
12
/* $Author: tknoll $ */
13
14
/*****************************************************************************/
15
16
#ifndef __dng_jpeg_image__
17
#define __dng_jpeg_image__
18
19
/*****************************************************************************/
20
21
#include "dng_auto_ptr.h"
22
#include "dng_memory.h"
23
#include "dng_point.h"
24
25
/*****************************************************************************/
26
27
typedef AutoPtr<dng_memory_block> dng_jpeg_image_tile_ptr;
28
29
/*****************************************************************************/
30
31
class dng_jpeg_image
32
  {
33
  
34
  public:
35
  
36
    dng_point fImageSize;
37
    
38
    dng_point fTileSize;
39
    
40
    bool fUsesStrips;
41
    
42
    AutoPtr<dng_memory_block> fJPEGTables;
43
    
44
    AutoArray<dng_jpeg_image_tile_ptr> fJPEGData;
45
    
46
  public:
47
  
48
    dng_jpeg_image ();
49
    
50
    uint32 TilesAcross () const
51
0
      {
52
0
      if (fTileSize.h)
53
0
        {
54
0
        return (fImageSize.h + fTileSize.h - 1) / fTileSize.h;
55
0
        }
56
0
      else
57
0
        {
58
0
        return 0;
59
0
        }
60
0
      }
61
    
62
    uint32 TilesDown () const
63
0
      {
64
0
      if (fTileSize.v)
65
0
        {
66
0
        return (fImageSize.v + fTileSize.v - 1) / fTileSize.v;
67
0
        }
68
0
      else
69
0
        {
70
0
        return 0;
71
0
        }
72
0
      }
73
      
74
    uint32 TileCount () const
75
0
      {
76
0
      return TilesAcross () * TilesDown ();
77
0
      }
78
    
79
    void Encode (dng_host &host,
80
           const dng_negative &negative,
81
           dng_image_writer &writer,
82
           const dng_image &image);
83
           
84
    dng_fingerprint FindDigest (dng_host &host) const;
85
      
86
  };
87
88
/*****************************************************************************/
89
90
#endif
91
  
92
/*****************************************************************************/