diff options
Diffstat (limited to 'include/qpdf/qpdfjob-c.h')
-rw-r--r-- | include/qpdf/qpdfjob-c.h | 129 |
1 files changed, 55 insertions, 74 deletions
diff --git a/include/qpdf/qpdfjob-c.h b/include/qpdf/qpdfjob-c.h index c41dbeee..5450d3d0 100644 --- a/include/qpdf/qpdfjob-c.h +++ b/include/qpdf/qpdfjob-c.h @@ -2,33 +2,29 @@ * * This file is part of qpdf. * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at + * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except + * in compliance with the License. You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. + * Unless required by applicable law or agreed to in writing, software distributed under the License + * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express + * or implied. See the License for the specific language governing permissions and limitations under + * the License. * - * Versions of qpdf prior to version 7 were released under the terms - * of version 2.0 of the Artistic License. At your option, you may - * continue to consider qpdf to be licensed under those terms. Please - * see the manual for additional information. + * Versions of qpdf prior to version 7 were released under the terms of version 2.0 of the Artistic + * License. At your option, you may continue to consider qpdf to be licensed under those terms. + * Please see the manual for additional information. */ #ifndef QPDFJOB_C_H #define QPDFJOB_C_H /* - * This file defines a basic "C" API for QPDFJob. See also qpdf-c.h, - * which defines an API that exposes more of the library's API. This - * API is primarily intended to make it simpler for programs in - * languages other than C++ to incorporate functionality that could be - * run directly from the command-line. + * This file defines a basic "C" API for QPDFJob. See also qpdf-c.h, which defines an API that + * exposes more of the library's API. This API is primarily intended to make it simpler for programs + * in languages other than C++ to incorporate functionality that could be run directly from the + * command-line. */ #include <qpdf/DLL.h> @@ -40,52 +36,46 @@ #endif /* - * This file provides a minimal wrapper around QPDFJob. See - * examples/qpdfjob-c.c for an example of its use. + * This file provides a minimal wrapper around QPDFJob. See examples/qpdfjob-c.c for an example of + * its use. */ #ifdef __cplusplus extern "C" { #endif - /* SHORT INTERFACE -- These functions are single calls that take - * care of the whole life cycle of QPDFJob. They can be used for - * one-shot operations where no additional configuration is + /* SHORT INTERFACE -- These functions are single calls that take care of the whole life cycle of + * QPDFJob. They can be used for one-shot operations where no additional configuration is * needed. See FULL INTERFACE below. */ - /* This function does the equivalent of running the qpdf - * command-line with the given arguments and returns the exit code - * that qpdf would use. argv must be a null-terminated array of - * null-terminated UTF8-encoded strings. If calling this from - * wmain on Windows, use qpdfjob_run_from_wide_argv instead. Exit - * code values are defined in Constants.h in the qpdf_exit_code_e - * type. + /* This function does the equivalent of running the qpdf command-line with the given arguments + * and returns the exit code that qpdf would use. argv must be a null-terminated array of + * null-terminated UTF8-encoded strings. If calling this from wmain on Windows, use + * qpdfjob_run_from_wide_argv instead. Exit code values are defined in Constants.h in the + * qpdf_exit_code_e type. */ QPDF_DLL int qpdfjob_run_from_argv(char const* const argv[]); #ifndef QPDF_NO_WCHAR_T - /* This function is the same as qpdfjob_run_from_argv except argv - * is encoded with wide characters. This would be suitable for - * calling from a Windows wmain function. + /* This function is the same as qpdfjob_run_from_argv except argv is encoded with wide + * characters. This would be suitable for calling from a Windows wmain function. */ QPDF_DLL int qpdfjob_run_from_wide_argv(wchar_t const* const argv[]); #endif /* QPDF_NO_WCHAR_T */ - /* This function runs QPDFJob from a job JSON file. See the "QPDF - * Job" section of the manual for details. The JSON string must be - * UTF8-encoded. It returns the error code that qpdf would return - * with the equivalent command-line invocation. Exit code values - * are defined in Constants.h in the qpdf_exit_code_e type. + /* This function runs QPDFJob from a job JSON file. See the "QPDF Job" section of the manual for + * details. The JSON string must be UTF8-encoded. It returns the error code that qpdf would + * return with the equivalent command-line invocation. Exit code values are defined in + * Constants.h in the qpdf_exit_code_e type. */ QPDF_DLL int qpdfjob_run_from_json(char const* json); - /* FULL INTERFACE -- new in qpdf11. Similar to the qpdf-c.h API, - * you must call qpdfjob_init to get a qpdfjob_handle and, when - * done, call qpdfjob_cleanup to free resources. Remaining methods - * take qpdfjob_handle as an argument. This interface requires - * more calls but also offers greater flexibility. + /* FULL INTERFACE -- new in qpdf11. Similar to the qpdf-c.h API, you must call qpdfjob_init to + * get a qpdfjob_handle and, when done, call qpdfjob_cleanup to free resources. Remaining + * methods take qpdfjob_handle as an argument. This interface requires more calls but also + * offers greater flexibility. */ typedef struct _qpdfjob_handle* qpdfjob_handle; QPDF_DLL @@ -94,11 +84,9 @@ extern "C" { QPDF_DLL void qpdfjob_cleanup(qpdfjob_handle* j); - /* Set or get the current logger. You need to call - * qpdflogger_cleanup on the logger handles when you are done with - * the handles. The underlying logger is cleaned up automatically - * and persists if needed after the logger handle is destroyed. - * See comments in qpdflogger-c.h for details. + /* Set or get the current logger. You need to call qpdflogger_cleanup on the logger handles when + * you are done with the handles. The underlying logger is cleaned up automatically and persists + * if needed after the logger handle is destroyed. See comments in qpdflogger-c.h for details. */ QPDF_DLL @@ -106,62 +94,55 @@ extern "C" { QPDF_DLL qpdflogger_handle qpdfjob_get_logger(qpdfjob_handle j); - /* This function wraps QPDFJob::initializeFromArgv. The return - * value is the same as qpdfjob_run. If this returns an error, it - * is invalid to call any other functions this job handle. + /* This function wraps QPDFJob::initializeFromArgv. The return value is the same as qpdfjob_run. + * If this returns an error, it is invalid to call any other functions this job handle. */ QPDF_DLL int qpdfjob_initialize_from_argv(qpdfjob_handle j, char const* const argv[]); #ifndef QPDF_NO_WCHAR_T - /* This function is the same as qpdfjob_initialize_from_argv - * except argv is encoded with wide characters. This would be - * suitable for calling from a Windows wmain function. + /* This function is the same as qpdfjob_initialize_from_argv except argv is encoded with wide + * characters. This would be suitable for calling from a Windows wmain function. */ QPDF_DLL int qpdfjob_initialize_from_wide_argv(qpdfjob_handle j, wchar_t const* const argv[]); #endif /* QPDF_NO_WCHAR_T */ - /* This function wraps QPDFJob::initializeFromJson. The return - * value is the same as qpdfjob_run. If this returns an error, it - * is invalid to call any other functions this job handle. + /* This function wraps QPDFJob::initializeFromJson. The return value is the same as qpdfjob_run. + * If this returns an error, it is invalid to call any other functions using this job handle. */ QPDF_DLL int qpdfjob_initialize_from_json(qpdfjob_handle j, char const* json); - /* This function wraps QPDFJob::run. It returns the error code - * that qpdf would return with the equivalent command-line - * invocation. Exit code values are defined in Constants.h in the + /* This function wraps QPDFJob::run. It returns the error code that qpdf would return with the + * equivalent command-line invocation. Exit code values are defined in Constants.h in the * qpdf_exit_code_e type. */ QPDF_DLL int qpdfjob_run(qpdfjob_handle j); - /* The following two functions allow a job to be run in two stages - - * creation of a qpdf_data object and writing of the qpdf_data object. This - * allows the qpdf_data object to be modified prior to writing it out. See - * examples/qpdfjob-remove-annotations for a C++ illustration of its use. + /* The following two functions allow a job to be run in two stages - creation of a qpdf_data + * object and writing of the qpdf_data object. This allows the qpdf_data object to be modified + * prior to writing it out. See examples/qpdfjob-remove-annotations for a C++ illustration of + * its use. * - * This function wraps QPDFJob::createQPDF. It runs the first stage of the - * job. A nullptr is returned if the job did not produce any pdf file to be - * written. + * This function wraps QPDFJob::createQPDF. It runs the first stage of the job. A nullptr is + * returned if the job did not produce any pdf file to be written. */ QPDF_DLL qpdf_data qpdfjob_create_qpdf(qpdfjob_handle j); - /* This function wraps QPDFJob::writeQPDF. It returns the error code that - * qpdf would return with the equivalent command-line invocation. Exit code - * values are defined in Constants.h in the qpdf_exit_code_e type. NOTE it - * is the callers responsibility to clean up the resources associated - * qpdf_data object by calling qpdf_cleanup after the call to + /* This function wraps QPDFJob::writeQPDF. It returns the error code that qpdf would return with + * the equivalent command-line invocation. Exit code values are defined in Constants.h in the + * qpdf_exit_code_e type. NOTE it is the callers responsibility to clean up the resources + * associated with the qpdf_data object by calling qpdf_cleanup after the call to * qpdfjob_write_qpdf. */ QPDF_DLL int qpdfjob_write_qpdf(qpdfjob_handle j, qpdf_data qpdf); - /* Allow specification of a custom progress reporter. The progress - * reporter is only used if progress is otherwise requested (with - * the --progress option or "progress": "" in the JSON). + /* Allow specification of a custom progress reporter. The progress reporter is only used if + * progress is otherwise requested (with the --progress option or "progress": "" in the JSON). */ QPDF_DLL void qpdfjob_register_progress_reporter( |