Coverage Report

Created: 2026-04-12 06:52

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/libraw/internal/dcraw_defs.h
Line
Count
Source
1
/* -*- C++ -*-
2
 * Copyright 2019-2025 LibRaw LLC (info@libraw.org)
3
 *
4
5
 LibRaw is free software; you can redistribute it and/or modify
6
 it under the terms of the one of two licenses as you choose:
7
8
1. GNU LESSER GENERAL PUBLIC LICENSE version 2.1
9
   (See file LICENSE.LGPL provided in LibRaw distribution archive for details).
10
11
2. COMMON DEVELOPMENT AND DISTRIBUTION LICENSE (CDDL) Version 1.0
12
   (See file LICENSE.CDDL provided in LibRaw distribution archive for details).
13
14
 */
15
16
#ifndef DCRAW_DEFS_H
17
#define DCRAW_DEFS_H
18
19
#include <math.h>
20
#define LIBRAW_LIBRARY_BUILD
21
#define LIBRAW_IO_REDEFINED
22
#include "libraw/libraw.h"
23
#include "libraw/libraw_types.h"
24
#include "internal/defines.h"
25
#include "internal/var_defines.h"
26
27
63.7k
#define stmread(buf, maxlen, fp) stread(buf, MIN(maxlen, sizeof(buf)), fp)
28
19.2k
#define strbuflen(buf) strnlen(buf, sizeof(buf) - 1)
29
787k
#define makeIs(idx) (maker_index == idx)
30
#define strnXcat(buf, string)                                                  \
31
18.9k
  strncat(buf, string, LIM(sizeof(buf) - strbuflen(buf) - 1, 0, sizeof(buf)))
32
33
// DNG was written by:
34
16.2M
#define nonDNG    0
35
680k
#define CameraDNG 1
36
1.05M
#define AdobeDNG  2
37
38
// Makernote tag type:
39
17.0k
#define is_0x927c 0 /* most cameras */
40
519
#define is_0xc634 2 /* Adobe DNG, Sony SR2, Pentax */
41
42
// abbreviations
43
2.12M
#define ilm imgdata.lens.makernotes
44
2.28M
#define icWBC imgdata.color.WB_Coeffs
45
1.21M
#define icWBCCTC imgdata.color.WBCT_Coeffs
46
1.07M
#define imCanon imgdata.makernotes.canon
47
1.11M
#define imFuji imgdata.makernotes.fuji
48
79.1k
#define imHassy imgdata.makernotes.hasselblad
49
12.8M
#define imKodak imgdata.makernotes.kodak
50
179k
#define imNikon imgdata.makernotes.nikon
51
382k
#define imOly imgdata.makernotes.olympus
52
12.6k
#define imPana imgdata.makernotes.panasonic
53
29.4k
#define imPentax imgdata.makernotes.pentax
54
2.46k
#define imPhaseOne imgdata.makernotes.phaseone
55
10.1k
#define imRicoh imgdata.makernotes.ricoh
56
29.9k
#define imSamsung imgdata.makernotes.samsung
57
1.62M
#define imSony imgdata.makernotes.sony
58
2.98M
#define imCommon imgdata.makernotes.common
59
60
61
143M
#define ph1_bits(n) ph1_bithuff(n, 0)
62
62.1M
#define ph1_huff(h) ph1_bithuff(*h, h + 1)
63
261M
#define getbits(n)  getbithuff(n, 0)
64
261M
#define gethuff(h)  getbithuff(*h, h + 1)
65
66
#endif