Commit 07edf9644004bd788eacec56aa21a5c89b3c92cc

Authored by Jay Berkenbilt
1 parent b6d1dffa

Remove methods of private classes from ABI

Prior to the cmake conversion, several private classes had methods
that were exported into the shared library so they could be tested
with libtests. With cmake, we build libtests using an object library,
so this is no longer necessary. The methods that are disappearing from
the ABI were never exposed through public headers, so no code should
be using them. Removal had to wait until the window for ABI-breaking
changes was open.
... ... @@ -37,7 +37,6 @@ cmake
37 37 =====
38 38  
39 39 * DLL.h
40   - * Remove DLL.h and QPDF_DLL* from all private library classes.
41 40 * Change DLL_EXPORT to QPDF_EXPORT. Be sure to call attention to
42 41 this in the release notes. There should be a "migrating to cmake"
43 42 in the manual, and ./configure should draw attention to it.
... ...
libqpdf/qpdf/BitStream.hh
... ... @@ -3,25 +3,18 @@
3 3 #ifndef BITSTREAM_HH
4 4 #define BITSTREAM_HH
5 5  
6   -#include <qpdf/DLL.h>
7 6 #include <stddef.h>
8 7  
9 8 class BitStream
10 9 {
11 10 public:
12   - QPDF_DLL
13 11 BitStream(unsigned char const* p, size_t nbytes);
14   - QPDF_DLL
15 12 void reset();
16   - QPDF_DLL
17 13 unsigned long long getBits(size_t nbits);
18   - QPDF_DLL
19 14 long long getBitsSigned(size_t nbits);
20 15 // Only call getBitsInt when requesting a number of bits that will
21 16 // definitely fit in an int.
22   - QPDF_DLL
23 17 int getBitsInt(size_t nbits);
24   - QPDF_DLL
25 18 void skipToNextByte();
26 19  
27 20 private:
... ...
libqpdf/qpdf/BitWriter.hh
... ... @@ -3,7 +3,6 @@
3 3 #ifndef BITWRITER_HH
4 4 #define BITWRITER_HH
5 5  
6   -#include <qpdf/DLL.h>
7 6 #include <stddef.h>
8 7  
9 8 class Pipeline;
... ... @@ -13,16 +12,11 @@ class BitWriter
13 12 public:
14 13 // Write bits to the pipeline. It is the caller's responsibility
15 14 // to eventually call finish on the pipeline.
16   - QPDF_DLL
17 15 BitWriter(Pipeline* pl);
18   - QPDF_DLL
19 16 void writeBits(unsigned long long val, size_t bits);
20   - QPDF_DLL
21 17 void writeBitsSigned(long long val, size_t bits);
22   - QPDF_DLL
23 18 void writeBitsInt(int val, size_t bits);
24 19 // Force any partial byte to be written to the pipeline.
25   - QPDF_DLL
26 20 void flush();
27 21  
28 22 private:
... ...
libqpdf/qpdf/CryptoRandomDataProvider.hh
1 1 #ifndef CRYPTORANDOMDATAPROVIDER_HH
2 2 #define CRYPTORANDOMDATAPROVIDER_HH
3 3  
4   -#include <qpdf/DLL.h>
5 4 #include <qpdf/RandomDataProvider.hh>
6 5  
7 6 class CryptoRandomDataProvider: public RandomDataProvider
8 7 {
9 8 public:
10   - QPDF_DLL
11 9 CryptoRandomDataProvider();
12   - QPDF_DLL
13 10 virtual ~CryptoRandomDataProvider();
14   -
15   - QPDF_DLL
16 11 virtual void provideRandomData(unsigned char* data, size_t len);
17   -
18   - QPDF_DLL
19 12 static RandomDataProvider* getInstance();
20 13 };
21 14  
... ...
libqpdf/qpdf/InsecureRandomDataProvider.hh
1 1 #ifndef INSECURERANDOMDATAPROVIDER_HH
2 2 #define INSECURERANDOMDATAPROVIDER_HH
3 3  
4   -#include <qpdf/DLL.h>
5 4 #include <qpdf/RandomDataProvider.hh>
6 5  
7 6 class InsecureRandomDataProvider: public RandomDataProvider
8 7 {
9 8 public:
10   - QPDF_DLL
11 9 InsecureRandomDataProvider();
12   - QPDF_DLL
13 10 virtual ~InsecureRandomDataProvider();
14   -
15   - QPDF_DLL
16 11 virtual void provideRandomData(unsigned char* data, size_t len);
17   -
18   - QPDF_DLL
19 12 static RandomDataProvider* getInstance();
20 13  
21 14 private:
... ...
libqpdf/qpdf/JSONHandler.hh
1 1 #ifndef JSONHANDLER_HH
2 2 #define JSONHANDLER_HH
3 3  
4   -#include <qpdf/DLL.h>
5 4 #include <qpdf/JSON.hh>
6 5 #include <functional>
7 6 #include <map>
... ... @@ -18,10 +17,7 @@ class JSONHandler
18 17 public:
19 18 // A QPDFUsage exception is thrown if there are any errors
20 19 // validating the JSON object.
21   - QPDF_DLL
22 20 JSONHandler();
23   -
24   - QPDF_DLL
25 21 ~JSONHandler() = default;
26 22  
27 23 // Based on the type of handler, expect the object to be of a
... ... @@ -42,36 +38,26 @@ class JSONHandler
42 38  
43 39 // If an any handler is added, it will be called for any value
44 40 // including null, and no other handler will be called.
45   - QPDF_DLL
46 41 void addAnyHandler(json_handler_t fn);
47 42  
48 43 // If any of the remaining handlers are registered, each
49 44 // registered handle will be called.
50   - QPDF_DLL
51 45 void addNullHandler(void_handler_t fn);
52   - QPDF_DLL
53 46 void addStringHandler(string_handler_t fn);
54   - QPDF_DLL
55 47 void addNumberHandler(string_handler_t fn);
56   - QPDF_DLL
57 48 void addBoolHandler(bool_handler_t fn);
58 49  
59   - QPDF_DLL
60 50 void addDictHandlers(json_handler_t start_fn, void_handler_t end_fn);
61   - QPDF_DLL
62 51 void
63 52 addDictKeyHandler(std::string const& key, std::shared_ptr<JSONHandler>);
64   - QPDF_DLL
65 53 void addFallbackDictHandler(std::shared_ptr<JSONHandler>);
66 54  
67   - QPDF_DLL
68 55 void addArrayHandlers(
69 56 json_handler_t start_fn,
70 57 void_handler_t end_fn,
71 58 std::shared_ptr<JSONHandler> item_handlers);
72 59  
73 60 // Apply handlers recursively to a JSON object.
74   - QPDF_DLL
75 61 void handle(std::string const& path, JSON j);
76 62  
77 63 private:
... ... @@ -115,7 +101,6 @@ class JSONHandler
115 101 friend class JSONHandler;
116 102  
117 103 public:
118   - QPDF_DLL
119 104 ~Members() = default;
120 105  
121 106 private:
... ...
libqpdf/qpdf/MD5.hh
1 1 #ifndef MD5_HH
2 2 #define MD5_HH
3 3  
4   -#include <qpdf/DLL.h>
5 4 #include <qpdf/QPDFCryptoImpl.hh>
6 5 #include <qpdf/Types.h>
7 6 #include <memory>
... ... @@ -12,50 +11,37 @@ class MD5
12 11 public:
13 12 typedef unsigned char Digest[16];
14 13  
15   - QPDF_DLL
16 14 MD5();
17   - QPDF_DLL
18 15 void reset();
19 16  
20 17 // encodes string and finalizes
21   - QPDF_DLL
22 18 void encodeString(char const* input_string);
23 19  
24 20 // encodes file and finalizes; offset < 0 reads whole file
25   - QPDF_DLL
26 21 void encodeFile(char const* filename, qpdf_offset_t up_to_offset = -1);
27 22  
28 23 // appends string to current md5 object
29   - QPDF_DLL
30 24 void appendString(char const* input_string);
31 25  
32 26 // appends arbitrary data to current md5 object
33   - QPDF_DLL
34 27 void encodeDataIncrementally(char const* input_data, size_t len);
35 28  
36 29 // computes a raw digest
37   - QPDF_DLL
38 30 void digest(Digest);
39 31  
40 32 // prints the digest to stdout terminated with \r\n (primarily for
41 33 // testing)
42   - QPDF_DLL
43 34 void print();
44 35  
45 36 // returns the digest as a hexadecimal string
46   - QPDF_DLL
47 37 std::string unparse();
48 38  
49 39 // Convenience functions
50   - QPDF_DLL
51 40 static std::string getDataChecksum(char const* buf, size_t len);
52   - QPDF_DLL
53 41 static std::string
54 42 getFileChecksum(char const* filename, qpdf_offset_t up_to_offset = -1);
55   - QPDF_DLL
56 43 static bool
57 44 checkDataChecksum(char const* const checksum, char const* buf, size_t len);
58   - QPDF_DLL
59 45 static bool checkFileChecksum(
60 46 char const* const checksum,
61 47 char const* filename,
... ...
libqpdf/qpdf/Pl_AES_PDF.hh
... ... @@ -11,7 +11,6 @@
11 11 class Pl_AES_PDF: public Pipeline
12 12 {
13 13 public:
14   - QPDF_DLL
15 14 // key should be a pointer to key_bytes bytes of data
16 15 Pl_AES_PDF(
17 16 char const* identifier,
... ... @@ -19,30 +18,22 @@ class Pl_AES_PDF: public Pipeline
19 18 bool encrypt,
20 19 unsigned char const* key,
21 20 size_t key_bytes);
22   - QPDF_DLL
23 21 virtual ~Pl_AES_PDF();
24 22  
25   - QPDF_DLL
26 23 virtual void write(unsigned char* data, size_t len);
27   - QPDF_DLL
28 24 virtual void finish();
29 25  
30 26 // Use zero initialization vector; needed for AESV3
31   - QPDF_DLL
32 27 void useZeroIV();
33 28 // Disable padding; needed for AESV3
34   - QPDF_DLL
35 29 void disablePadding();
36 30 // Specify an initialization vector, which will not be included in
37 31 // the output.
38   - QPDF_DLL
39 32 void setIV(unsigned char const* iv, size_t bytes);
40 33  
41 34 // For testing only; PDF always uses CBC
42   - QPDF_DLL
43 35 void disableCBC();
44 36 // For testing only: use a fixed initialization vector for CBC
45   - QPDF_DLL
46 37 static void useStaticIV();
47 38  
48 39 private:
... ...
libqpdf/qpdf/Pl_ASCII85Decoder.hh
... ... @@ -6,13 +6,9 @@
6 6 class Pl_ASCII85Decoder: public Pipeline
7 7 {
8 8 public:
9   - QPDF_DLL
10 9 Pl_ASCII85Decoder(char const* identifier, Pipeline* next);
11   - QPDF_DLL
12 10 virtual ~Pl_ASCII85Decoder();
13   - QPDF_DLL
14 11 virtual void write(unsigned char* buf, size_t len);
15   - QPDF_DLL
16 12 virtual void finish();
17 13  
18 14 private:
... ...
libqpdf/qpdf/Pl_ASCIIHexDecoder.hh
... ... @@ -6,13 +6,9 @@
6 6 class Pl_ASCIIHexDecoder: public Pipeline
7 7 {
8 8 public:
9   - QPDF_DLL
10 9 Pl_ASCIIHexDecoder(char const* identifier, Pipeline* next);
11   - QPDF_DLL
12 10 virtual ~Pl_ASCIIHexDecoder();
13   - QPDF_DLL
14 11 virtual void write(unsigned char* buf, size_t len);
15   - QPDF_DLL
16 12 virtual void finish();
17 13  
18 14 private:
... ...
libqpdf/qpdf/Pl_LZWDecoder.hh
... ... @@ -9,14 +9,10 @@
9 9 class Pl_LZWDecoder: public Pipeline
10 10 {
11 11 public:
12   - QPDF_DLL
13 12 Pl_LZWDecoder(
14 13 char const* identifier, Pipeline* next, bool early_code_change);
15   - QPDF_DLL
16 14 virtual ~Pl_LZWDecoder();
17   - QPDF_DLL
18 15 virtual void write(unsigned char* buf, size_t len);
19   - QPDF_DLL
20 16 virtual void finish();
21 17  
22 18 private:
... ...
libqpdf/qpdf/Pl_MD5.hh
... ... @@ -15,27 +15,20 @@
15 15 class Pl_MD5: public Pipeline
16 16 {
17 17 public:
18   - QPDF_DLL
19 18 Pl_MD5(char const* identifier, Pipeline* next);
20   - QPDF_DLL
21 19 virtual ~Pl_MD5();
22   - QPDF_DLL
23 20 virtual void write(unsigned char*, size_t);
24   - QPDF_DLL
25 21 virtual void finish();
26   - QPDF_DLL
27 22 std::string getHexDigest();
28 23 // Enable/disable. Disabling the pipeline causes it to become a
29 24 // pass-through. This makes it possible to stick an MD5 pipeline
30 25 // in a pipeline when it may or may not be required. Disabling it
31 26 // avoids incurring the runtime overhead of doing needless
32 27 // digest computation.
33   - QPDF_DLL
34 28 void enable(bool enabled);
35 29 // If persistAcrossFinish is called, calls to finish do not
36 30 // finalize the underlying md5 object. In this case, the object is
37 31 // not finalized until getHexDigest() is called.
38   - QPDF_DLL
39 32 void persistAcrossFinish(bool);
40 33  
41 34 private:
... ...
libqpdf/qpdf/Pl_PNGFilter.hh
... ... @@ -15,7 +15,6 @@ class Pl_PNGFilter: public Pipeline
15 15 // Encoding is only partially supported
16 16 enum action_e { a_encode, a_decode };
17 17  
18   - QPDF_DLL
19 18 Pl_PNGFilter(
20 19 char const* identifier,
21 20 Pipeline* next,
... ... @@ -23,12 +22,9 @@ class Pl_PNGFilter: public Pipeline
23 22 unsigned int columns,
24 23 unsigned int samples_per_pixel = 1,
25 24 unsigned int bits_per_sample = 8);
26   - QPDF_DLL
27 25 virtual ~Pl_PNGFilter();
28 26  
29   - QPDF_DLL
30 27 virtual void write(unsigned char* data, size_t len);
31   - QPDF_DLL
32 28 virtual void finish();
33 29  
34 30 private:
... ...
libqpdf/qpdf/Pl_RC4.hh
... ... @@ -11,19 +11,15 @@ class Pl_RC4: public Pipeline
11 11 static size_t const def_bufsize = 65536;
12 12  
13 13 // key_len of -1 means treat key_data as a null-terminated string
14   - QPDF_DLL
15 14 Pl_RC4(
16 15 char const* identifier,
17 16 Pipeline* next,
18 17 unsigned char const* key_data,
19 18 int key_len = -1,
20 19 size_t out_bufsize = def_bufsize);
21   - QPDF_DLL
22 20 virtual ~Pl_RC4();
23 21  
24   - QPDF_DLL
25 22 virtual void write(unsigned char* data, size_t len);
26   - QPDF_DLL
27 23 virtual void finish();
28 24  
29 25 private:
... ...
libqpdf/qpdf/Pl_SHA2.hh
... ... @@ -20,19 +20,12 @@
20 20 class Pl_SHA2: public Pipeline
21 21 {
22 22 public:
23   - QPDF_DLL
24 23 Pl_SHA2(int bits = 0, Pipeline* next = 0);
25   - QPDF_DLL
26 24 virtual ~Pl_SHA2();
27   - QPDF_DLL
28 25 virtual void write(unsigned char*, size_t);
29   - QPDF_DLL
30 26 virtual void finish();
31   - QPDF_DLL
32 27 void resetBits(int bits);
33   - QPDF_DLL
34 28 std::string getHexDigest();
35   - QPDF_DLL
36 29 std::string getRawDigest();
37 30  
38 31 private:
... ...
libqpdf/qpdf/Pl_TIFFPredictor.hh
... ... @@ -11,7 +11,6 @@ class Pl_TIFFPredictor: public Pipeline
11 11 public:
12 12 enum action_e { a_encode, a_decode };
13 13  
14   - QPDF_DLL
15 14 Pl_TIFFPredictor(
16 15 char const* identifier,
17 16 Pipeline* next,
... ... @@ -19,12 +18,9 @@ class Pl_TIFFPredictor: public Pipeline
19 18 unsigned int columns,
20 19 unsigned int samples_per_pixel = 1,
21 20 unsigned int bits_per_sample = 8);
22   - QPDF_DLL
23 21 virtual ~Pl_TIFFPredictor();
24 22  
25   - QPDF_DLL
26 23 virtual void write(unsigned char* data, size_t len);
27   - QPDF_DLL
28 24 virtual void finish();
29 25  
30 26 private:
... ...
libqpdf/qpdf/QPDFArgParser.hh
1 1 #ifndef QPDFARGPARSER_HH
2 2 #define QPDFARGPARSER_HH
3 3  
4   -#include <qpdf/DLL.h>
5 4 #include <functional>
6 5 #include <map>
7 6 #include <memory>
... ... @@ -27,18 +26,15 @@ class QPDFArgParser
27 26 // progname_env is used to override argv[0] when figuring out the
28 27 // name of the executable for setting up completion. This may be
29 28 // needed if the program is invoked by a wrapper.
30   - QPDF_DLL
31 29 QPDFArgParser(int argc, char const* const argv[], char const* progname_env);
32 30  
33 31 // Calls exit(0) if a help option is given or if in completion
34 32 // mode. If there are argument parsing errors, QPDFUsage is
35 33 // thrown.
36   - QPDF_DLL
37 34 void parseArgs();
38 35  
39 36 // Return the program name as the last path element of the program
40 37 // executable.
41   - QPDF_DLL
42 38 std::string getProgname();
43 39  
44 40 // Methods for registering arguments. QPDFArgParser starts off
... ... @@ -52,32 +48,23 @@ class QPDFArgParser
52 48 typedef std::function<void()> bare_arg_handler_t;
53 49 typedef std::function<void(std::string const&)> param_arg_handler_t;
54 50  
55   - QPDF_DLL
56 51 void selectMainOptionTable();
57   - QPDF_DLL
58 52 void selectHelpOptionTable();
59   - QPDF_DLL
60 53 void selectOptionTable(std::string const& name);
61 54  
62 55 // Register a new options table. This also selects the option table.
63   - QPDF_DLL
64 56 void registerOptionTable(
65 57 std::string const& name, bare_arg_handler_t end_handler);
66 58  
67 59 // Add handlers for options in the current table
68 60  
69   - QPDF_DLL
70 61 void addPositional(param_arg_handler_t);
71   - QPDF_DLL
72 62 void addBare(std::string const& arg, bare_arg_handler_t);
73   - QPDF_DLL
74 63 void addRequiredParameter(
75 64 std::string const& arg,
76 65 param_arg_handler_t,
77 66 char const* parameter_name);
78   - QPDF_DLL
79 67 void addOptionalParameter(std::string const& arg, param_arg_handler_t);
80   - QPDF_DLL
81 68 void addChoices(
82 69 std::string const& arg,
83 70 param_arg_handler_t,
... ... @@ -88,12 +75,10 @@ class QPDFArgParser
88 75 // an option that takes choices is to list all the choices. This
89 76 // may not be good if there are too many choices, so you can
90 77 // provide your own handler in this case.
91   - QPDF_DLL
92 78 void addInvalidChoiceHandler(std::string const& arg, param_arg_handler_t);
93 79  
94 80 // The final check handler is called at the very end of argument
95 81 // parsing.
96   - QPDF_DLL
97 82 void addFinalCheck(bare_arg_handler_t);
98 83  
99 84 // Help generation methods
... ... @@ -134,18 +119,15 @@ class QPDFArgParser
134 119  
135 120 // If provided, this footer is appended to all help, separated by
136 121 // a blank line.
137   - QPDF_DLL
138 122 void addHelpFooter(std::string const&);
139 123  
140 124 // Add a help topic along with the text for that topic
141   - QPDF_DLL
142 125 void addHelpTopic(
143 126 std::string const& topic,
144 127 std::string const& short_text,
145 128 std::string const& long_text);
146 129  
147 130 // Add help for an option, and associate it with a topic.
148   - QPDF_DLL
149 131 void addOptionHelp(
150 132 std::string const& option_name,
151 133 std::string const& topic,
... ... @@ -156,7 +138,6 @@ class QPDFArgParser
156 138 // pointer returns the top-level help information. Passing an
157 139 // unknown value returns a string directing the user to run the
158 140 // top-level --help option.
159   - QPDF_DLL
160 141 std::string getHelp(std::string const& topic_or_option);
161 142  
162 143 // Convenience methods for adding member functions of a class as
... ... @@ -176,23 +157,19 @@ class QPDFArgParser
176 157  
177 158 // When processing arguments, indicate how many arguments remain
178 159 // after the one whose handler is being called.
179   - QPDF_DLL
180 160 int argsLeft() const;
181 161  
182 162 // Indicate whether we are in completion mode.
183   - QPDF_DLL
184 163 bool isCompleting() const;
185 164  
186 165 // Insert a completion during argument parsing; useful for
187 166 // customizing completion in the position argument handler. Should
188 167 // only be used in completion mode.
189   - QPDF_DLL
190 168 void insertCompletion(std::string const&);
191 169  
192 170 // Throw a Usage exception with the given message. In completion
193 171 // mode, this just exits to prevent errors from partial commands
194 172 // or other error messages from messing up completion.
195   - QPDF_DLL
196 173 void usage(std::string const& message);
197 174  
198 175 private:
... ... @@ -259,7 +236,6 @@ class QPDFArgParser
259 236 friend class QPDFArgParser;
260 237  
261 238 public:
262   - QPDF_DLL
263 239 ~Members() = default;
264 240  
265 241 private:
... ...
libqpdf/qpdf/QPDFCrypto_gnutls.hh
1 1 #ifndef QPDFCRYPTO_GNUTLS_HH
2 2 #define QPDFCRYPTO_GNUTLS_HH
3 3  
4   -#include <qpdf/DLL.h>
5 4 #include <qpdf/QPDFCryptoImpl.hh>
6 5 #include <memory>
7 6  
... ... @@ -16,7 +15,6 @@ class QPDFCrypto_gnutls: public QPDFCryptoImpl
16 15 public:
17 16 QPDFCrypto_gnutls();
18 17  
19   - QPDF_DLL
20 18 virtual ~QPDFCrypto_gnutls();
21 19  
22 20 virtual void provideRandomData(unsigned char* data, size_t len);
... ...
libqpdf/qpdf/QPDFCrypto_native.hh
... ... @@ -2,7 +2,6 @@
2 2 #define QPDFCRYPTO_NATIVE_HH
3 3  
4 4 #include <qpdf/AES_PDF_native.hh>
5   -#include <qpdf/DLL.h>
6 5 #include <qpdf/MD5_native.hh>
7 6 #include <qpdf/QPDFCryptoImpl.hh>
8 7 #include <qpdf/RC4_native.hh>
... ... @@ -14,7 +13,6 @@ class QPDFCrypto_native: public QPDFCryptoImpl
14 13 public:
15 14 QPDFCrypto_native() = default;
16 15  
17   - QPDF_DLL
18 16 virtual ~QPDFCrypto_native() = default;
19 17  
20 18 virtual void provideRandomData(unsigned char* data, size_t len);
... ...
libqpdf/qpdf/QPDFCrypto_openssl.hh
... ... @@ -26,8 +26,6 @@ class QPDFCrypto_openssl: public QPDFCryptoImpl
26 26 {
27 27 public:
28 28 QPDFCrypto_openssl();
29   -
30   - QPDF_DLL
31 29 ~QPDFCrypto_openssl() override;
32 30  
33 31 void provideRandomData(unsigned char* data, size_t len) override;
... ...
libqpdf/qpdf/RC4.hh
... ... @@ -9,11 +9,9 @@ class RC4
9 9 {
10 10 public:
11 11 // key_len of -1 means treat key_data as a null-terminated string
12   - QPDF_DLL
13 12 RC4(unsigned char const* key_data, int key_len = -1);
14 13  
15 14 // out_data = 0 means to encrypt/decrypt in place
16   - QPDF_DLL
17 15 void
18 16 process(unsigned char* in_data, size_t len, unsigned char* out_data = 0);
19 17  
... ...
libqpdf/qpdf/SecureRandomDataProvider.hh
1 1 #ifndef SECURERANDOMDATAPROVIDER_HH
2 2 #define SECURERANDOMDATAPROVIDER_HH
3 3  
4   -#include <qpdf/DLL.h>
5 4 #include <qpdf/RandomDataProvider.hh>
6 5  
7 6 class SecureRandomDataProvider: public RandomDataProvider
8 7 {
9 8 public:
10   - QPDF_DLL
11 9 SecureRandomDataProvider();
12   - QPDF_DLL
13 10 virtual ~SecureRandomDataProvider();
14   -
15   - QPDF_DLL
16 11 virtual void provideRandomData(unsigned char* data, size_t len);
17   -
18   - QPDF_DLL
19 12 static RandomDataProvider* getInstance();
20 13 };
21 14  
... ...
libqpdf/qpdf/SparseOHArray.hh
... ... @@ -7,30 +7,19 @@
7 7 class SparseOHArray
8 8 {
9 9 public:
10   - QPDF_DLL
11 10 SparseOHArray();
12   - QPDF_DLL
13 11 size_t size() const;
14   - QPDF_DLL
15 12 void append(QPDFObjectHandle oh);
16   - QPDF_DLL
17 13 QPDFObjectHandle at(size_t idx) const;
18   - QPDF_DLL
19 14 void remove_last();
20   - QPDF_DLL
21 15 void releaseResolved();
22   - QPDF_DLL
23 16 void setAt(size_t idx, QPDFObjectHandle oh);
24   - QPDF_DLL
25 17 void erase(size_t idx);
26   - QPDF_DLL
27 18 void insert(size_t idx, QPDFObjectHandle oh);
28 19  
29 20 typedef std::unordered_map<size_t, QPDFObjectHandle>::const_iterator
30 21 const_iterator;
31   - QPDF_DLL
32 22 const_iterator begin() const;
33   - QPDF_DLL
34 23 const_iterator end() const;
35 24  
36 25 private:
... ...
qpdf/sizes.cc
... ... @@ -50,28 +50,6 @@
50 50 #define ignore_class(cls)
51 51 #define print_size(cls) std::cout << #cls << " " << sizeof(cls) << std::endl
52 52  
53   -// These classes are not really public.
54   -// ------
55   -ignore_class(BitStream);
56   -ignore_class(BitWriter);
57   -ignore_class(CryptoRandomDataProvider);
58   -ignore_class(InsecureRandomDataProvider);
59   -ignore_class(JSONHandler);
60   -ignore_class(MD5);
61   -ignore_class(Pl_AES_PDF);
62   -ignore_class(Pl_ASCII85Decoder);
63   -ignore_class(Pl_ASCIIHexDecoder);
64   -ignore_class(Pl_LZWDecoder);
65   -ignore_class(Pl_MD5);
66   -ignore_class(Pl_PNGFilter);
67   -ignore_class(Pl_RC4);
68   -ignore_class(Pl_SHA2);
69   -ignore_class(Pl_TIFFPredictor);
70   -ignore_class(QPDFArgParser);
71   -ignore_class(RC4);
72   -ignore_class(SecureRandomDataProvider);
73   -ignore_class(SparseOHArray);
74   -
75 53 // This is public because of QPDF_DLL_CLASS on InputSource
76 54 // -------
77 55 ignore_class(InputSource::Members);
... ...