MUSX Document Model
Loading...
Searching...
No Matches
musx::factory::DocumentFactory::CreateOptions Struct Reference

Optional arguments for document creation. More...

#include <DocumentFactory.h>

Classes

struct  EmbeddedGraphicFile
 Raw embedded graphic file payload from a musx archive. More...
 

Public Types

using EmbeddedGraphicFiles = std::vector< EmbeddedGraphicFile >
 Embedded graphic files provided by caller.
 

Public Member Functions

 CreateOptions ()=default
 Default constructor.
 
 CreateOptions (dom::PartVoicingPolicy policy)
 Construct options with a part-voicing policy.
 
 CreateOptions (std::filesystem::path inputFilepath, std::vector< char > notationMetadata, EmbeddedGraphicFiles embeddedGraphicFiles, dom::PartVoicingPolicy policy=dom::PartVoicingPolicy::Ignore)
 Construct options with explicit inputs.
 
const std::vector< char > & getNotationMetadata () const
 Optional NotationMetadata.xml content.
 
const dom::EmbeddedGraphicsMapgetEmbeddedGraphics () const
 Embedded graphics keyed by graphic cmper.
 
const std::optional< std::filesystem::path > & getSourcePath () const
 Optional path to the musx (or EnigmaXML) file being loaded.
 
dom::EmbeddedGraphicsMap takeEmbeddedGraphics ()
 Move out embedded graphics.
 

Public Attributes

dom::PartVoicingPolicy partVoicingPolicy = dom::PartVoicingPolicy::Ignore
 Part voicing behavior for this document.
 

Detailed Description

Optional arguments for document creation.

Constructor & Destructor Documentation

◆ CreateOptions() [1/2]

musx::factory::DocumentFactory::CreateOptions::CreateOptions ( dom::PartVoicingPolicy  policy)
inline

Construct options with a part-voicing policy.

Parameters
policyThe policy to apply for this document.

◆ CreateOptions() [2/2]

musx::factory::DocumentFactory::CreateOptions::CreateOptions ( std::filesystem::path  inputFilepath,
std::vector< char >  notationMetadata,
EmbeddedGraphicFiles  embeddedGraphicFiles,
dom::PartVoicingPolicy  policy = dom::PartVoicingPolicy::Ignore 
)
inline

Construct options with explicit inputs.

Parameters
inputFilepathPath to the musx (or EnigmaXML) file being loaded.
notationMetadataBuffer containing NotationMetadata.xml.
embeddedGraphicFilesEmbedded graphic files in cmper.ext form.
policyThe policy to apply for this document.