aboutsummaryrefslogtreecommitdiffstats
path: root/libqpdf/QPDFJob_config.cc
diff options
context:
space:
mode:
authorJay Berkenbilt <ejb@ql.org>2022-01-26 23:18:03 +0100
committerJay Berkenbilt <ejb@ql.org>2022-01-30 19:11:03 +0100
commitc62ab2ee9f153aa623ed5ffab764f453941da4c7 (patch)
treea3ccc60592fcd7e4a723d9c4306d626562ce0179 /libqpdf/QPDFJob_config.cc
parent03f3369f35b2303166e8d36547c8a0aba6626c1b (diff)
downloadqpdf-c62ab2ee9f153aa623ed5ffab764f453941da4c7.tar.zst
QPDFJob: use pointers instead of references for Config
Why? The main methods that create them return smart pointers so that users can initialize them when needed, which you can't do with references. Returning pointers instead of references makes for a more uniform interface.
Diffstat (limited to 'libqpdf/QPDFJob_config.cc')
-rw-r--r--libqpdf/QPDFJob_config.cc584
1 files changed, 292 insertions, 292 deletions
diff --git a/libqpdf/QPDFJob_config.cc b/libqpdf/QPDFJob_config.cc
index a13dee4b..74fff62d 100644
--- a/libqpdf/QPDFJob_config.cc
+++ b/libqpdf/QPDFJob_config.cc
@@ -8,7 +8,7 @@ static void usage(std::string const& msg)
throw QPDFJob::ConfigError(msg);
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::inputFile(char const* filename)
{
if (o.m->infilename == 0)
@@ -19,10 +19,10 @@ QPDFJob::Config::inputFile(char const* filename)
{
usage("input file has already been given");
}
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::emptyInput()
{
if (o.m->infilename == 0)
@@ -42,10 +42,10 @@ QPDFJob::Config::emptyInput()
usage("empty input can't be used"
" since input file has already been given");
}
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::outputFile(char const* filename)
{
if ((o.m->outfilename == 0) && (! o.m->replace_input))
@@ -56,10 +56,10 @@ QPDFJob::Config::outputFile(char const* filename)
{
usage("output file has already been given");
}
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::replaceInput()
{
if ((o.m->outfilename == 0) && (! o.m->replace_input))
@@ -71,111 +71,111 @@ QPDFJob::Config::replaceInput()
usage("replace-input can't be used"
" since output file has already been given");
}
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::allowWeakCrypto()
{
o.m->allow_weak_crypto = true;
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::check()
{
o.m->check = true;
o.m->require_outfile = false;
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::checkLinearization()
{
o.m->check_linearization = true;
o.m->require_outfile = false;
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::coalesceContents()
{
o.m->coalesce_contents = true;
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::collate(char const* parameter)
{
auto n = ((parameter == 0) ? 1 :
QUtil::string_to_uint(parameter));
o.m->collate = QIntC::to_size(n);
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::compressStreams(char const* parameter)
{
o.m->compress_streams_set = true;
o.m->compress_streams = (strcmp(parameter, "y") == 0);
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::compressionLevel(char const* parameter)
{
o.m->compression_level = QUtil::string_to_int(parameter);
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::copyEncryption(char const* parameter)
{
o.m->encryption_file = parameter;
o.m->copy_encryption = true;
o.m->encrypt = false;
o.m->decrypt = false;
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::decrypt()
{
o.m->decrypt = true;
o.m->encrypt = false;
o.m->copy_encryption = false;
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::deterministicId()
{
o.m->deterministic_id = true;
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::encryptionFilePassword(char const* parameter)
{
o.m->encryption_file_password = QUtil::make_shared_cstr(parameter);
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::externalizeInlineImages()
{
o.m->externalize_inline_images = true;
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::filteredStreamData()
{
o.m->show_filtered_stream_data = true;
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::flattenAnnotations(char const* parameter)
{
o.m->flatten_annotations = true;
@@ -187,375 +187,375 @@ QPDFJob::Config::flattenAnnotations(char const* parameter)
{
o.m->flatten_annotations_required |= an_print;
}
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::flattenRotation()
{
o.m->flatten_rotation = true;
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::forceVersion(char const* parameter)
{
o.m->force_version = parameter;
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::generateAppearances()
{
o.m->generate_appearances = true;
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::ignoreXrefStreams()
{
o.m->ignore_xref_streams = true;
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::iiMinBytes(char const* parameter)
{
o.m->ii_min_bytes = QUtil::string_to_uint(parameter);
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::isEncrypted()
{
o.m->check_is_encrypted = true;
o.m->require_outfile = false;
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::json()
{
o.m->json = true;
o.m->require_outfile = false;
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::jsonKey(char const* parameter)
{
o.m->json_keys.insert(parameter);
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::jsonObject(char const* parameter)
{
o.m->json_objects.insert(parameter);
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::keepFilesOpen(char const* parameter)
{
o.m->keep_files_open_set = true;
o.m->keep_files_open = (strcmp(parameter, "y") == 0);
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::keepFilesOpenThreshold(char const* parameter)
{
o.m->keep_files_open_threshold = QUtil::string_to_uint(parameter);
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::keepInlineImages()
{
o.m->keep_inline_images = true;
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::linearize()
{
o.m->linearize = true;
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::linearizePass1(char const* parameter)
{
o.m->linearize_pass1 = parameter;
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::listAttachments()
{
o.m->list_attachments = true;
o.m->require_outfile = false;
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::minVersion(char const* parameter)
{
o.m->min_version = parameter;
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::newlineBeforeEndstream()
{
o.m->newline_before_endstream = true;
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::noOriginalObjectIds()
{
o.m->suppress_original_object_id = true;
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::noWarn()
{
o.m->suppress_warnings = true;
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::normalizeContent(char const* parameter)
{
o.m->normalize_set = true;
o.m->normalize = (strcmp(parameter, "y") == 0);
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::oiMinArea(char const* parameter)
{
o.m->oi_min_area = QUtil::string_to_uint(parameter);
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::oiMinHeight(char const* parameter)
{
o.m->oi_min_height = QUtil::string_to_uint(parameter);
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::oiMinWidth(char const* parameter)
{
o.m->oi_min_width = QUtil::string_to_uint(parameter);
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::optimizeImages()
{
o.m->optimize_images = true;
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::password(char const* parameter)
{
o.m->password = QUtil::make_shared_cstr(parameter);
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::passwordIsHexKey()
{
o.m->password_is_hex_key = true;
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::preserveUnreferenced()
{
o.m->preserve_unreferenced_objects = true;
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::preserveUnreferencedResources()
{
o.m->remove_unreferenced_page_resources = QPDFJob::re_no;
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::progress()
{
o.m->progress = true;
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::qdf()
{
o.m->qdf_mode = true;
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::rawStreamData()
{
o.m->show_raw_stream_data = true;
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::recompressFlate()
{
o.m->recompress_flate_set = true;
o.m->recompress_flate = true;
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::removeAttachment(char const* parameter)
{
o.m->attachments_to_remove.push_back(parameter);
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::removePageLabels()
{
o.m->remove_page_labels = true;
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::requiresPassword()
{
o.m->check_requires_password = true;
o.m->require_outfile = false;
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::showAttachment(char const* parameter)
{
o.m->attachment_to_show = parameter;
o.m->require_outfile = false;
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::showEncryption()
{
o.m->show_encryption = true;
o.m->require_outfile = false;
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::showEncryptionKey()
{
o.m->show_encryption_key = true;
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::showLinearization()
{
o.m->show_linearization = true;
o.m->require_outfile = false;
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::showNpages()
{
o.m->show_npages = true;
o.m->require_outfile = false;
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::showPages()
{
o.m->show_pages = true;
o.m->require_outfile = false;
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::showXref()
{
o.m->show_xref = true;
o.m->require_outfile = false;
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::splitPages(char const* parameter)
{
int n = ((parameter == 0) ? 1 :
QUtil::string_to_int(parameter));
o.m->split_pages = n;
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::staticAesIv()
{
o.m->static_aes_iv = true;
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::staticId()
{
o.m->static_id = true;
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::suppressPasswordRecovery()
{
o.m->suppress_password_recovery = true;
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::suppressRecovery()
{
o.m->suppress_recovery = true;
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::verbose()
{
o.m->verbose = true;
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::warningExit0()
{
o.m->warnings_exit_zero = true;
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::withImages()
{
o.m->show_page_images = true;
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::passwordFile(char const* parameter)
{
std::list<std::string> lines;
@@ -580,10 +580,10 @@ QPDFJob::Config::passwordFile(char const* parameter)
<< " the password file are ignored" << std::endl;
}
}
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::passwordMode(char const* parameter)
{
if (strcmp(parameter, "bytes") == 0)
@@ -606,10 +606,10 @@ QPDFJob::Config::passwordMode(char const* parameter)
{
usage("invalid password-mode option");
}
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::streamData(char const* parameter)
{
o.m->stream_data_set = true;
@@ -631,10 +631,10 @@ QPDFJob::Config::streamData(char const* parameter)
// ArgParser::initOptionTable is wrong.
usage("invalid stream-data option");
}
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::decodeLevel(char const* parameter)
{
o.m->decode_level_set = true;
@@ -660,10 +660,10 @@ QPDFJob::Config::decodeLevel(char const* parameter)
// ArgParser::initOptionTable is wrong.
usage("invalid option");
}
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::objectStreams(char const* parameter)
{
o.m->object_stream_set = true;
@@ -685,10 +685,10 @@ QPDFJob::Config::objectStreams(char const* parameter)
// ArgParser::initOptionTable is wrong.
usage("invalid object stream mode");
}
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::removeUnreferencedResources(char const* parameter)
{
if (strcmp(parameter, "auto") == 0)
@@ -709,19 +709,19 @@ QPDFJob::Config::removeUnreferencedResources(char const* parameter)
// ArgParser::initOptionTable is wrong.
usage("invalid value for --remove-unreferenced-page-resources");
}
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::showObject(char const* parameter)
{
QPDFJob::parse_object_id(
parameter, o.m->show_trailer, o.m->show_obj, o.m->show_gen);
o.m->require_outfile = false;
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::jobJsonFile(char const* parameter)
{
PointerHolder<char> file_buf;
@@ -738,60 +738,60 @@ QPDFJob::Config::jobJsonFile(char const* parameter)
e.what() + "\nRun " + this->o.m->message_prefix +
"--job-json-help for information on the file format.");
}
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::Config::rotate(char const* parameter)
{
o.parseRotationParameter(parameter);
- return *this;
+ return this;
}
std::shared_ptr<QPDFJob::CopyAttConfig>
QPDFJob::Config::copyAttachmentsFrom()
{
- return std::shared_ptr<CopyAttConfig>(new CopyAttConfig(*this));
+ return std::shared_ptr<CopyAttConfig>(new CopyAttConfig(this));
}
-QPDFJob::CopyAttConfig::CopyAttConfig(Config& c) :
+QPDFJob::CopyAttConfig::CopyAttConfig(Config* c) :
config(c)
{
}
-QPDFJob::CopyAttConfig&
+QPDFJob::CopyAttConfig*
QPDFJob::CopyAttConfig::path(char const* parameter)
{
this->caf.path = parameter;
- return *this;
+ return this;
}
-QPDFJob::CopyAttConfig&
+QPDFJob::CopyAttConfig*
QPDFJob::CopyAttConfig::prefix(char const* parameter)
{
this->caf.prefix = parameter;
- return *this;
+ return this;
}
-QPDFJob::CopyAttConfig&
+QPDFJob::CopyAttConfig*
QPDFJob::CopyAttConfig::password(char const* parameter)
{
this->caf.password = parameter;
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::CopyAttConfig::endCopyAttachmentsFrom()
{
if (this->caf.path.empty())
{
usage("copy attachments: no path specified");
}
- this->config.o.m->attachments_to_copy.push_back(this->caf);
+ this->config->o.m->attachments_to_copy.push_back(this->caf);
return this->config;
}
-QPDFJob::AttConfig::AttConfig(Config& c) :
+QPDFJob::AttConfig::AttConfig(Config* c) :
config(c)
{
}
@@ -799,31 +799,31 @@ QPDFJob::AttConfig::AttConfig(Config& c) :
std::shared_ptr<QPDFJob::AttConfig>
QPDFJob::Config::addAttachment()
{
- return std::shared_ptr<AttConfig>(new AttConfig(*this));
+ return std::shared_ptr<AttConfig>(new AttConfig(this));
}
-QPDFJob::AttConfig&
+QPDFJob::AttConfig*
QPDFJob::AttConfig::path(char const* parameter)
{
this->att.path = parameter;
- return *this;
+ return this;
}
-QPDFJob::AttConfig&
+QPDFJob::AttConfig*
QPDFJob::AttConfig::key(char const* parameter)
{
this->att.key = parameter;
- return *this;
+ return this;
}
-QPDFJob::AttConfig&
+QPDFJob::AttConfig*
QPDFJob::AttConfig::filename(char const* parameter)
{
this->att.filename = parameter;
- return *this;
+ return this;
}
-QPDFJob::AttConfig&
+QPDFJob::AttConfig*
QPDFJob::AttConfig::creationdate(char const* parameter)
{
if (! QUtil::pdf_time_to_qpdf_time(parameter))
@@ -831,10 +831,10 @@ QPDFJob::AttConfig::creationdate(char const* parameter)
usage(std::string(parameter) + " is not a valid PDF timestamp");
}
this->att.creationdate = parameter;
- return *this;
+ return this;
}
-QPDFJob::AttConfig&
+QPDFJob::AttConfig*
QPDFJob::AttConfig::moddate(char const* parameter)
{
if (! QUtil::pdf_time_to_qpdf_time(parameter))
@@ -842,10 +842,10 @@ QPDFJob::AttConfig::moddate(char const* parameter)
usage(std::string(parameter) + " is not a valid PDF timestamp");
}
this->att.moddate = parameter;
- return *this;
+ return this;
}
-QPDFJob::AttConfig&
+QPDFJob::AttConfig*
QPDFJob::AttConfig::mimetype(char const* parameter)
{
if (strchr(parameter, '/') == nullptr)
@@ -853,24 +853,24 @@ QPDFJob::AttConfig::mimetype(char const* parameter)
usage("mime type should be specified as type/subtype");
}
this->att.mimetype = parameter;
- return *this;
+ return this;
}
-QPDFJob::AttConfig&
+QPDFJob::AttConfig*
QPDFJob::AttConfig::description(char const* parameter)
{
this->att.description = parameter;
- return *this;
+ return this;
}
-QPDFJob::AttConfig&
+QPDFJob::AttConfig*
QPDFJob::AttConfig::replace()
{
this->att.replace = true;
- return *this;
+ return this;
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::AttConfig::endAddAttachment()
{
static std::string now = QUtil::qpdf_time_to_pdf_time(
@@ -901,11 +901,11 @@ QPDFJob::AttConfig::endAddAttachment()
this->att.moddate = now;
}
- this->config.o.m->attachments_to_add.push_back(this->att);
+ this->config->o.m->attachments_to_add.push_back(this->att);
return this->config;
}
-QPDFJob::PagesConfig::PagesConfig(Config& c) :
+QPDFJob::PagesConfig::PagesConfig(Config* c) :
config(c)
{
}
@@ -917,108 +917,108 @@ QPDFJob::Config::pages()
{
usage("--pages may only be specified one time");
}
- return std::shared_ptr<PagesConfig>(new PagesConfig(*this));
+ return std::shared_ptr<PagesConfig>(new PagesConfig(this));
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::PagesConfig::endPages()
{
- if (this->config.o.m->page_specs.empty())
+ if (this->config->o.m->page_specs.empty())
{
usage("--pages: no page specifications given");
}
return this->config;
}
-QPDFJob::PagesConfig&
+QPDFJob::PagesConfig*
QPDFJob::PagesConfig::pageSpec(std::string const& filename,
std::string const& range,
char const* password)
{
- this->config.o.m->page_specs.push_back(
+ this->config->o.m->page_specs.push_back(
QPDFJob::PageSpec(filename, password, range));
- return *this;
+ return this;
}
std::shared_ptr<QPDFJob::UOConfig>
QPDFJob::Config::overlay()
{
o.m->under_overlay = &o.m->overlay;
- return std::shared_ptr<UOConfig>(new UOConfig(*this));
+ return std::shared_ptr<UOConfig>(new UOConfig(this));
}
std::shared_ptr<QPDFJob::UOConfig>
QPDFJob::Config::underlay()
{
o.m->under_overlay = &o.m->underlay;
- return std::shared_ptr<UOConfig>(new UOConfig(*this));
+ return std::shared_ptr<UOConfig>(new UOConfig(this));
}
-QPDFJob::UOConfig::UOConfig(Config& c) :
+QPDFJob::UOConfig::UOConfig(Config* c) :
config(c)
{
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::UOConfig::endUnderlayOverlay()
{
- if (config.o.m->under_overlay->filename.empty())
+ if (config->o.m->under_overlay->filename.empty())
{
- usage(config.o.m->under_overlay->which + " file not specified");
+ usage(config->o.m->under_overlay->which + " file not specified");
}
- config.o.m->under_overlay = 0;
+ config->o.m->under_overlay = 0;
return this->config;
}
-QPDFJob::UOConfig&
+QPDFJob::UOConfig*
QPDFJob::UOConfig::path(char const* parameter)
{
- if (! config.o.m->under_overlay->filename.empty())
+ if (! config->o.m->under_overlay->filename.empty())
{
- usage(config.o.m->under_overlay->which + " file already specified");
+ usage(config->o.m->under_overlay->which + " file already specified");
}
else
{
- config.o.m->under_overlay->filename = parameter;
+ config->o.m->under_overlay->filename = parameter;
}
- return *this;
+ return this;
}
-QPDFJob::UOConfig&
+QPDFJob::UOConfig*
QPDFJob::UOConfig::to(char const* parameter)
{
- config.o.parseNumrange(parameter, 0);
- config.o.m->under_overlay->to_nr = parameter;
- return *this;
+ config->o.parseNumrange(parameter, 0);
+ config->o.m->under_overlay->to_nr = parameter;
+ return this;
}
-QPDFJob::UOConfig&
+QPDFJob::UOConfig*
QPDFJob::UOConfig::from(char const* parameter)
{
if (strlen(parameter))
{
- config.o.parseNumrange(parameter, 0);
+ config->o.parseNumrange(parameter, 0);
}
- config.o.m->under_overlay->from_nr = parameter;
- return *this;
+ config->o.m->under_overlay->from_nr = parameter;
+ return this;
}
-QPDFJob::UOConfig&
+QPDFJob::UOConfig*
QPDFJob::UOConfig::repeat(char const* parameter)
{
if (strlen(parameter))
{
- config.o.parseNumrange(parameter, 0);
+ config->o.parseNumrange(parameter, 0);
}
- config.o.m->under_overlay->repeat_nr = parameter;
- return *this;
+ config->o.m->under_overlay->repeat_nr = parameter;
+ return this;
}
-QPDFJob::UOConfig&
+QPDFJob::UOConfig*
QPDFJob::UOConfig::password(char const* parameter)
{
- config.o.m->under_overlay->password = QUtil::make_shared_cstr(parameter);
- return *this;
+ config->o.m->under_overlay->password = QUtil::make_shared_cstr(parameter);
+ return this;
}
std::shared_ptr<QPDFJob::EncConfig>
@@ -1033,185 +1033,185 @@ QPDFJob::Config::encrypt(int keylen,
}
o.m->user_password = user_password;
o.m->owner_password = owner_password;
- return std::shared_ptr<EncConfig>(new EncConfig(*this));
+ return std::shared_ptr<EncConfig>(new EncConfig(this));
}
-QPDFJob::EncConfig::EncConfig(Config& c) :
+QPDFJob::EncConfig::EncConfig(Config* c) :
config(c)
{
}
-QPDFJob::Config&
+QPDFJob::Config*
QPDFJob::EncConfig::endEncrypt()
{
- config.o.m->encrypt = true;
- config.o.m->decrypt = false;
- config.o.m->copy_encryption = false;
+ config->o.m->encrypt = true;
+ config->o.m->decrypt = false;
+ config->o.m->copy_encryption = false;
return this->config;
}
-QPDFJob::EncConfig&
+QPDFJob::EncConfig*
QPDFJob::EncConfig::allowInsecure()
{
- config.o.m->allow_insecure = true;
- return *this;
+ config->o.m->allow_insecure = true;
+ return this;
}
-QPDFJob::EncConfig&
+QPDFJob::EncConfig*
QPDFJob::EncConfig::accessibility(char const* parameter)
{
- config.o.m->r3_accessibility = (strcmp(parameter, "y") == 0);
- return *this;
+ config->o.m->r3_accessibility = (strcmp(parameter, "y") == 0);
+ return this;
}
-QPDFJob::EncConfig&
+QPDFJob::EncConfig*
QPDFJob::EncConfig::extract(char const* parameter)
{
- if (config.o.m->keylen == 40)
+ if (config->o.m->keylen == 40)
{
- config.o.m->r2_extract = (strcmp(parameter, "y") == 0);
+ config->o.m->r2_extract = (strcmp(parameter, "y") == 0);
}
else
{
- config.o.m->r3_extract = (strcmp(parameter, "y") == 0);
+ config->o.m->r3_extract = (strcmp(parameter, "y") == 0);
}
- return *this;
+ return this;
}
-QPDFJob::EncConfig&
+QPDFJob::EncConfig*
QPDFJob::EncConfig::print(char const* parameter)
{
- if (config.o.m->keylen == 40)
+ if (config->o.m->keylen == 40)
{
- config.o.m->r2_print = (strcmp(parameter, "y") == 0);
+ config->o.m->r2_print = (strcmp(parameter, "y") == 0);
}
else if (strcmp(parameter, "full") == 0)
{
- config.o.m->r3_print = qpdf_r3p_full;
+ config->o.m->r3_print = qpdf_r3p_full;
}
else if (strcmp(parameter, "low") == 0)
{
- config.o.m->r3_print = qpdf_r3p_low;
+ config->o.m->r3_print = qpdf_r3p_low;
}
else if (strcmp(parameter, "none") == 0)
{
- config.o.m->r3_print = qpdf_r3p_none;
+ config->o.m->r3_print = qpdf_r3p_none;
}
else
{
usage("invalid print option");
}
- return *this;
+ return this;
}
-QPDFJob::EncConfig&
+QPDFJob::EncConfig*
QPDFJob::EncConfig::modify(char const* parameter)
{
- if (config.o.m->keylen == 40)
+ if (config->o.m->keylen == 40)
{
- config.o.m->r2_modify = (strcmp(parameter, "y") == 0);
+ config->o.m->r2_modify = (strcmp(parameter, "y") == 0);
}
else if (strcmp(parameter, "all") == 0)
{
- config.o.m->r3_assemble = true;
- config.o.m->r3_annotate_and_form = true;
- config.o.m->r3_form_filling = true;
- config.o.m->r3_modify_other = true;
+ config->o.m->r3_assemble = true;
+ config->o.m->r3_annotate_and_form = true;
+ config->o.m->r3_form_filling = true;
+ config->o.m->r3_modify_other = true;
}
else if (strcmp(parameter, "annotate") == 0)
{
- config.o.m->r3_assemble = true;
- config.o.m->r3_annotate_and_form = true;
- config.o.m->r3_form_filling = true;
- config.o.m->r3_modify_other = false;
+ config->o.m->r3_assemble = true;
+ config->o.m->r3_annotate_and_form = true;
+ config->o.m->r3_form_filling = true;
+ config->o.m->r3_modify_other = false;
}
else if (strcmp(parameter, "form") == 0)
{
- config.o.m->r3_assemble = true;
- config.o.m->r3_annotate_and_form = false;
- config.o.m->r3_form_filling = true;
- config.o.m->r3_modify_other = false;
+ config->o.m->r3_assemble = true;
+ config->o.m->r3_annotate_and_form = false;
+ config->o.m->r3_form_filling = true;
+ config->o.m->r3_modify_other = false;
}
else if (strcmp(parameter, "assembly") == 0)
{
- config.o.m->r3_assemble = true;
- config.o.m->r3_annotate_and_form = false;
- config.o.m->r3_form_filling = false;
- config.o.m->r3_modify_other = false;
+ config->o.m->r3_assemble = true;
+ config->o.m->r3_annotate_and_form = false;
+ config->o.m->r3_form_filling = false;
+ config->o.m->r3_modify_other = false;
}
else if (strcmp(parameter, "none") == 0)
{
- config.o.m->r3_assemble = false;
- config.o.m->r3_annotate_and_form = false;
- config.o.m->r3_form_filling = false;
- config.o.m->r3_modify_other = false;
+ config->o.m->r3_assemble = false;
+ config->o.m->r3_annotate_and_form = false;
+ config->o.m->r3_form_filling = false;
+ config->o.m->r3_modify_other = false;
}
else
{
usage("invalid modify option");
}
- return *this;
+ return this;
}
-QPDFJob::EncConfig&
+QPDFJob::EncConfig*
QPDFJob::EncConfig::cleartextMetadata()
{
- config.o.m->cleartext_metadata = true;
- return *this;
+ config->o.m->cleartext_metadata = true;
+ return this;
}
-QPDFJob::EncConfig&
+QPDFJob::EncConfig*
QPDFJob::EncConfig::assemble(char const* parameter)
{
- config.o.m->r3_assemble = (strcmp(parameter, "y") == 0);
- return *this;
+ config->o.m->r3_assemble = (strcmp(parameter, "y") == 0);
+ return this;
}
-QPDFJob::EncConfig&
+QPDFJob::EncConfig*
QPDFJob::EncConfig::annotate(char const* parameter)
{
- if (config.o.m->keylen == 40)
+ if (config->o.m->keylen == 40)
{
- config.o.m->r2_annotate = (strcmp(parameter, "y") == 0);
+ config->o.m->r2_annotate = (strcmp(parameter, "y") == 0);
}
else
{
- config.o.m->r3_annotate_and_form = (strcmp(parameter, "y") == 0);
+ config->o.m->r3_annotate_and_form = (strcmp(parameter, "y") == 0);
}
- return *this;
+ return this;
}
-QPDFJob::EncConfig&
+QPDFJob::EncConfig*
QPDFJob::EncConfig::form(char const* parameter)
{
- config.o.m->r3_form_filling = (strcmp(parameter, "y") == 0);
- return *this;
+ config->o.m->r3_form_filling = (strcmp(parameter, "y") == 0);
+ return this;
}
-QPDFJob::EncConfig&
+QPDFJob::EncConfig*
QPDFJob::EncConfig::modifyOther(char const* parameter)
{
- config.o.m->r3_modify_other = (strcmp(parameter, "y") == 0);
- return *this;
+ config->o.m->r3_modify_other = (strcmp(parameter, "y") == 0);
+ return this;
}
-QPDFJob::EncConfig&
+QPDFJob::EncConfig*
QPDFJob::EncConfig::useAes(char const* parameter)
{
- config.o.m->use_aes = (strcmp(parameter, "y") == 0);
- return *this;
+ config->o.m->use_aes = (strcmp(parameter, "y") == 0);
+ return this;
}
-QPDFJob::EncConfig&
+QPDFJob::EncConfig*
QPDFJob::EncConfig::forceV4()
{
- config.o.m->force_V4 = true;
- return *this;
+ config->o.m->force_V4 = true;
+ return this;
}
-QPDFJob::EncConfig&
+QPDFJob::EncConfig*
QPDFJob::EncConfig::forceR5()
{
- config.o.m->force_R5 = true;
- return *this;
+ config->o.m->force_R5 = true;
+ return this;
}