=begin = SMF モジュール == クラス * Sequence * Track * Event * MIDIMessage * ChannelMessage <..., ch> * VoiceMessage * NoteOff <..., note, vel> * NoteOn <..., note, vel> * PolyphonicKeyPressure <..., note, val> * ControlChange <..., num, val> * ProgramChange <..., num> * ChannelPressure <..., val> * PitchBendChange <..., val> * ChannelModeMessage <..., num, val> * SystemMessage * Exclusive * ExclusiveF0 <..., data> * ExclusiveF7 <..., data> * Meta <..., type> * SequenceNumber <..., num> * Text <..., text> * GeneralPurposeText (Text01) * CopyrightNotice (Text02) * TrackName (SequenceName, Text03) * InstrumentName (Text04) * Lyric (Text05) * Marker (Text06) * CuePoint (Text07) * ProgramName (Text08) * DeviceName (Text09) * Text0A * Text0B * Text0C * Text0D * Text0E * Text0F * ChannelPrefix <..., ch> * MIDIPort <..., num> * EndOfTrack * SetTempo <..., tempo> * SMPTEOffset <..., hr, mn, se, fr, ff> * TimeSignature <..., nn, dd, cc, bb> * KeySignature <..., sf, mi> * SequencerSpecific <..., data> == Sequence シーケンスを表現するクラスです。シーケンスはトラックをもちます。 === スーパークラス Object === クラスメソッド : decode(str) 文字列から読みこみます。 : decodeio(io) IO から読みこみます。 : decodefile(fn) ファイルから読みこみます。 : new([format=1[, division=96]]) シーケンスオブジェクトを作成します。 === アクセサ : format : division === メソッド : length : size 要素数を返します。 : ntrks 要素数を返します。 nil の要素は勘定しません。 : self << tr 末尾に追加します。 : self >> tr 要素を除きます。 : push(tr) 末尾に追加します。 : pop 末尾の要素を取り除きます。 : unshift(tr) 先頭に追加します。 : shift 先頭の要素を取り除きます。 : self[n] n 番目の要素を返します。 : self[n]=tr n 番目の要素を変更します。 : each{|tr| ...} 要素について繰り返します。 nil の要素は無視されます。 : encode 文字列に書きます。 もし、トラックに EOT がなければ、 トラックの最後にデルタ零の EOT を追加します。 : encodeio(io) IO に書きます。 : encodefile(fn) ファイルに書きます。 == Track トラックを表現するクラスです。トラックはイベントをもちます。 === スーパークラス Object === クラスメソッド : new トラックオブジェクトを作成します。 === メソッド : length : size 要素数を返します。 : nevts 要素数を返します。 nil の要素は勘定しません。 : self << ev 末尾に追加します。 : self >> ev 要素を除きます。 : push(ev) 末尾に追加します。 : pop 末尾の要素を取り除きます。 : unshift(ev) 先頭に追加します。 : shift 先頭の要素を取り除きます。 : self[n] n 番目の要素を返します。 : self[n]=ev n 番目の要素を変更します。 : each{|ev| ...} 要素について繰り返します。 nil の要素は無視されます。また、イベントはソートされます。 == Event イベントの抽象クラスです。 === スーパークラス Object === インクルードしているモジュール Comparable === アクセサ : offset =end