Pulp 1.88.0
Cross-platform audio plugin framework
Loading...
Searching...
No Matches
pulp::dawproject Namespace Reference

Classes

struct  ExportOptions

Functions

interchange::FormatBoundExportWriter writer (const ExportOptions &options={})
 Build a DAWproject writer.
interchange::ExportWriter writer (const timeline::Project &legacy_project, const ExportOptions &options={})
 Compatibility overload for the pre-plan-owned writer API.

Function Documentation

◆ writer() [1/2]

interchange::FormatBoundExportWriter pulp::dawproject::writer ( const ExportOptions & options = {})

Build a DAWproject writer.

The immutable document snapshot is owned by the ExportPlan; the writer always serializes that snapshot, so consent measured against one document cannot authorize bytes from another.

Use it through the ordinary contract — there is no one-shot entry point:

const auto plan = interchange::plan_export(project, interchange::Format::DawProject);
interchange::ExportOptions options;
options.accepted_losses = plan.required_consent();   // reviewed, not blanket
auto artifacts = interchange::run_export(plan, options,
                                         dawproject::writer()); 

◆ writer() [2/2]

interchange::ExportWriter pulp::dawproject::writer ( const timeline::Project & legacy_project,
const ExportOptions & options = {} )

Compatibility overload for the pre-plan-owned writer API.

Deprecated
Build the writer with writer(options). legacy_project is deliberately ignored: run_export always serializes the immutable project snapshot owned by its ExportPlan.
Parameters
legacy_projectIgnored; retained only for source compatibility.
optionsProducer metadata written into the DAWproject XML.