Ardour  9.0-pre0-582-g084a23a80d
ARDOUR::ExportSMFWriter Class Reference

#include <export_smf_writer.h>

Inheritance diagram for ARDOUR::ExportSMFWriter:
[legend]

Public Member Functions

 ExportSMFWriter ()
 
 ~ExportSMFWriter ()
 
int init (std::string const &path, samplepos_t)
 
Temporal::Beats duration () const
 
void process (MidiBuffer const &, sampleoffset_t, samplecnt_t, bool)
 

Private Attributes

std::string _path
 
samplepos_t _pos
 
samplepos_t _last_ev_time_samples
 
samplepos_t _timespan_start
 
MidiStateTracker _tracker
 
- Private Attributes inherited from Evoral::SMF
uint64_t _n_note_on_events
 
bool _has_pgm_change
 
int _num_channels
 
UsedChannels _used_channels
 

Additional Inherited Members

- Private Types inherited from Evoral::SMF
typedef std::bitset< 16 > UsedChannels
 
typedef std::vector< MarkerAtMarkers
 
- Private Member Functions inherited from Evoral::SMF
 SMF ()
 
virtual ~SMF ()
 
int open (const std::string &path, int track=1, bool scan=true)
 
int create (const std::string &path, int track=1, uint16_t ppqn=19200)
 
void close ()
 
void seek_to_start () const
 
int seek_to_track (int track)
 
int read_event (uint32_t *delta_t, uint32_t *size, uint8_t **buf, event_id_t *note_id) const
 
uint16_t num_tracks () const
 
uint16_t ppqn () const
 
bool is_empty () const
 
void begin_write ()
 
void append_event_delta (uint32_t delta_t, uint32_t size, const uint8_t *buf, event_id_t note_id)
 
void end_write (std::string const &)
 
void flush ()
 
void set_length (Temporal::Beats const &)
 
double round_to_file_precision (double val) const
 
int smf_format () const
 
Temporal::Beats file_duration () const
 
int num_channels () const
 
UsedChannels const & used_channels () const
 
void set_used_channels (UsedChannels used)
 
uint64_t n_note_on_events () const
 
bool has_pgm_change () const
 
void track_names (std::vector< std::string > &) const
 
void instrument_names (std::vector< std::string > &) const
 
int num_tempos () const
 
Temponth_tempo (size_t n) const
 
Markers const & markers () const
 
void load_markers ()
 
std::shared_ptr< Temporal::TempoMaptempo_map (bool &provided) const
 
- Static Private Member Functions inherited from Evoral::SMF
static bool test (const std::string &path)
 

Detailed Description

Definition at line 34 of file export_smf_writer.h.

Constructor & Destructor Documentation

◆ ExportSMFWriter()

ARDOUR::ExportSMFWriter::ExportSMFWriter ( )

◆ ~ExportSMFWriter()

ARDOUR::ExportSMFWriter::~ExportSMFWriter ( )

Member Function Documentation

◆ duration()

Temporal::Beats ARDOUR::ExportSMFWriter::duration ( ) const
virtual

Reimplemented from Evoral::SMF.

◆ init()

int ARDOUR::ExportSMFWriter::init ( std::string const &  path,
samplepos_t   
)

◆ process()

void ARDOUR::ExportSMFWriter::process ( MidiBuffer const &  ,
sampleoffset_t  ,
samplecnt_t  ,
bool   
)

Member Data Documentation

◆ _last_ev_time_samples

samplepos_t ARDOUR::ExportSMFWriter::_last_ev_time_samples
private

Definition at line 48 of file export_smf_writer.h.

◆ _path

std::string ARDOUR::ExportSMFWriter::_path
private

Definition at line 46 of file export_smf_writer.h.

◆ _pos

samplepos_t ARDOUR::ExportSMFWriter::_pos
private

Definition at line 47 of file export_smf_writer.h.

◆ _timespan_start

samplepos_t ARDOUR::ExportSMFWriter::_timespan_start
private

Definition at line 49 of file export_smf_writer.h.

◆ _tracker

MidiStateTracker ARDOUR::ExportSMFWriter::_tracker
private

Definition at line 50 of file export_smf_writer.h.


The documentation for this class was generated from the following file: