BeatSheet.h header
#include <ew/core/BeatSheet.h>
Namespace ew::core
BeatAssignment struct
struct ew::core::BeatAssignment
One beat of an applied beat sheet: the mapping from a named story beat (e.g. "Catalyst", "All Is Lost") to the scene/document that fulfils it. The beat is named rather than indexed so the mapping stays readable and survives if a structure template's beat order is ever revised.
Members
QString ew::core::BeatAssignment::beatName
The name of the beat, matching a beat in the applied structure template.
ContentId ew::core::BeatAssignment::documentId
The document that fulfils this beat; a null id means the beat is still unfilled (a plotting gap).
bool operator==(const BeatAssignment &, const BeatAssignment &)=default
Two assignments compare equal when the beat name and document match.
BeatSheet struct
struct ew::core::BeatSheet
A project's applied beat sheet: the structure template the writer has chosen to plot against and the scene assigned to each of its beats. The template itself (the ordered list of beats and their target positions) is built-in data in ew::app; this is only the writer's choice of template plus the per-beat scene mapping, so it lives on the project and persists. An empty templateId means no beat sheet has been applied.
Members
QString ew::core::BeatSheet::templateId
The id of the applied structure template (e.g. "save-the-cat"); empty means none applied.
std::vector<BeatAssignment> ew::core::BeatSheet::assignments
The scene assigned to each beat, by beat name. Beats with no entry (or a null document) are unfilled.
bool operator==(const BeatSheet &, const BeatSheet &)=default
Two beat sheets compare equal when the template and every assignment match.