RAUL  0.5.1
Public Member Functions | Static Public Member Functions | Protected Attributes | Static Protected Attributes | List of all members
Raul::SMFReader Class Reference

Standard Midi File (Type 0) Reader. More...

#include <SMFReader.hpp>

Public Member Functions

 SMFReader (const std::string filename="")
 
bool open (const std::string &filename) throw (std::logic_error, UnsupportedTime)
 
bool seek_to_track (unsigned track) throw (std::logic_error)
 
uint16_t type () const
 
uint16_t ppqn () const
 
size_t num_tracks ()
 
int read_event (size_t buf_len, uint8_t *buf, uint32_t *ev_size, uint32_t *ev_delta_time) throw (std::logic_error, PrematureEOF, CorruptFile)
 
void close ()
 

Static Public Member Functions

static uint32_t read_var_len (FILE *fd) throw (PrematureEOF)
 

Protected Attributes

std::string _filename
 
FILE * _fd
 
uint16_t _type
 
uint16_t _ppqn
 
uint16_t _num_tracks
 
uint32_t _track
 
uint32_t _track_size
 

Static Protected Attributes

static const uint32_t HEADER_SIZE = 22
 size of SMF header, including MTrk chunk header
 

Detailed Description

Standard Midi File (Type 0) Reader.

Currently this only reads SMF files with tempo-based timing.


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