ConversionPlan.h header
#include <ew/app/ConversionPlan.h>
Namespace ew::app
ConversionQuestion struct
struct ew::app::ConversionQuestion
A question the conversion wants answered before acting on one item – the archetype being a PDF's disposition (convert vs keep-as-reference; docs/AI_FOLDER_CONVERSION.md §4b). In supervised mode the wizard asks; in autonomous mode recommendedOption is taken and the choice is logged in the report either way.
Members
QString ew::app::ConversionQuestion::subject
What the question is about (usually a file's relative path or a proposal name).
QString ew::app::ConversionQuestion::prompt
The question itself, user-readable.
QStringList ew::app::ConversionQuestion::options
The choices, user-readable, in presentation order.
int ew::app::ConversionQuestion::recommendedOption = 0
Index into options of the AI-recommended default (what autonomous mode picks).
int ew::app::ConversionQuestion::chosenOption = -1
The resolved choice: -1 until answered (supervised) or defaulted (autonomous).
bool ew::app::ConversionQuestion::operator==(const ConversionQuestion &) const =default
Field-wise equality.
ConversionReport struct
struct ew::app::ConversionReport
The accumulated record of a conversion run, rendered at the end (and saved as a Note).
Members
std::vector<ConversionReportEntry> ew::app::ConversionReport::entries
Every outcome, in the order it happened.
void ew::app::ConversionReport::add(const QString &stage, const QString &outcome)
Appends one entry.
QString ew::app::ConversionReport::toMarkdown() const
The report as user-readable Markdown, grouped by stage in first-seen order.
ConversionReportEntry struct
struct ew::app::ConversionReportEntry
One line of the conversion report: what happened (or was decided) and where it landed.
Members
QString ew::app::ConversionReportEntry::stage
The stage that produced this entry (e.g. "Entities", "Timeline", "PDFs").
QString ew::app::ConversionReportEntry::outcome
User-readable outcome ("Created entity 'Aria Sunwell' (Characters)"; "'rules.pdf' kept as a reference source (autonomous default)"). Nothing is silently dropped: skips and defaulted answers are entries too.
bool ew::app::ConversionReportEntry::operator==(const ConversionReportEntry &) const =default
Field-wise equality.
Functions
bool ew::app::sameProposalName(const QString &a, const QString &b)
Case-insensitively trims and compares proposal names so stages dedup consistently against the existing project and each other (" Aria " == "aria").
std::vector< T > ew::app::withoutExistingNames(const std::vector< T > &proposed, const QStringList &existing, NameFn nameOf)
Returns the entries of proposed whose names (via nameOf) are not already present in existing (per sameProposalName) – the shared dedup every stage applies before offering its proposals.