Coverage Report

Created: 2025-07-14 06:14

/src/qpdf/include/qpdf/QTC.hh
Line
Count
Source
1
// Copyright (c) 2005-2021 Jay Berkenbilt
2
// Copyright (c) 2022-2025 Jay Berkenbilt and Manfred Holger
3
//
4
// This file is part of qpdf.
5
//
6
// Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
7
// in compliance with the License. You may obtain a copy of the License at
8
//
9
//   http://www.apache.org/licenses/LICENSE-2.0
10
//
11
// Unless required by applicable law or agreed to in writing, software distributed under the License
12
// is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
13
// or implied. See the License for the specific language governing permissions and limitations under
14
// the License.
15
//
16
// Versions of qpdf prior to version 7 were released under the terms of version 2.0 of the Artistic
17
// License. At your option, you may continue to consider qpdf to be licensed under those terms.
18
// Please see the manual for additional information.
19
20
#ifndef QTC_HH
21
#define QTC_HH
22
23
#include <qpdf/DLL.h>
24
25
// Defining QPDF_DISABLE_QTC will effectively compile out any QTC::TC calls in any code that
26
// includes this file, but QTC will still be built into the library. That way, it is possible to
27
// build and package qpdf with QPDF_DISABLE_QTC while still making QTC::TC available to end users.
28
29
namespace QTC
30
{
31
    QPDF_DLL
32
    void TC_real(char const* const scope, char const* const ccase, int n = 0);
33
34
    inline void
35
    TC(char const* const scope, char const* const ccase, int n = 0)
36
341k
    {
37
#ifndef QPDF_DISABLE_QTC
38
        TC_real(scope, ccase, n);
39
#endif // QPDF_DISABLE_QTC
40
341k
    }
41
}; // namespace QTC
42
43
#endif // QTC_HH