NiCMidi 1.1.0
A MIDI library derived from J.D.Koftinoff jdksmidi
dump_tracks.h
Go to the documentation of this file.
1/*
2 * NiCMidi - A C++ Class Library for MIDI
3 *
4 * Copyright (C) 2004 J.D. Koftinoff Software, Ltd.
5 * www.jdkoftinoff.com jeffk@jdkoftinoff.com
6 * Copyright (C) 2021, 2022 Nicola Cassetta
7 * https://github.com/ncassetta/NiCMidi
8 *
9 * This file is part of NiCMidi.
10 *
11 * NiCMidi is free software: you can redistribute it and/or modify
12 * it under the terms of the GNU Lesser General Public License as
13 * published by the Free Software Foundation, either version 3 of
14 * the License, or (at your option) any later version.
15 *
16 * NiCMidi is distributed in the hope that it will be useful,
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 * GNU Lesser General Public License for more details.
20 *
21 * You should have received a copy of the GNU Lesser General Public
22 * License along with NiCMidi. If not, see <http://www.gnu.org/licenses/>.
23 */
24
25
29
30#ifndef _NICMIDI_DUMP_TRACKS_H
31#define _NICMIDI_DUMP_TRACKS_H
32
33#include <iostream>
34#include "multitrack.h"
35#include "matrix.h"
36
37
40
43
46void SetChanFrom(unsigned char c = 0);
48void DumpMIDITimedMessage (MIDITimedMessage* const msg, std::ostream& ost = std::cout);
50void DumpMIDITrack (MIDITrack* const trk, std::ostream& ost = std::cout);
58int DumpMIDITrackAttr (MIDITrack* const trk, int num, std::ostream& ost = std::cout);
67int DumpMIDITrackAttrVerbose (MIDITrack* const trk, int num, std::ostream& ost = std::cout);
69void DumpAllTracks (MIDIMultiTrack* const mlt, std::ostream& ost = std::cout);
71void DumpMIDIMultiTrack (MIDIMultiTrack* const mlt, std::ostream& ost = std::cout);
74
79
81void CheckMIDIMatrix(const MIDIMatrix& matrix, std::ostream& ost = std::cout);
84
85
86#endif // DUMP_TRACKS_H_INCLUDED
This MIDIProcessor subclass implements a matrix which keeps track of notes on and hold pedal for ever...
Definition: matrix.h:43
Holds an array of pointers to MIDITrack objects to be played simultaneously.
Definition: multitrack.h:50
The MIDITimedMessage class inherits from the MIDIMessage and represents a message associated with a s...
Definition: msg.h:382
Manages a std::vector of MIDITimedMessage objects storing MIDI events, with methods for editing them.
Definition: track.h:86
void DumpMIDITrack(MIDITrack *const trk, std::ostream &ost=std::cout)
Prints a list of all the MIDI messages in the given MIDItrack.
void DumpMIDITimedMessage(MIDITimedMessage *const msg, std::ostream &ost=std::cout)
Prints a readable string describing the contents of the given MIDIMessage (or MIDITimedMessage).
int DumpMIDITrackAttrVerbose(MIDITrack *const trk, int num, std::ostream &ost=std::cout)
Prints all the properties of the given MIDItrack.
void CheckMIDIMatrix(const MIDIMatrix &matrix, std::ostream &ost=std::cout)
Helper function which shows the contents of a MIDIMatrix.
int DumpMIDITrackAttr(MIDITrack *const trk, int num, std::ostream &ost=std::cout)
Prints the main properties of the given MIDItrack.
void DumpMIDIMultiTrack(MIDIMultiTrack *const mlt, std::ostream &ost=std::cout)
Prints a list of all MIDI messages in the given MIDIMultiTrack in temporal order.
void DumpAllTracks(MIDIMultiTrack *const mlt, std::ostream &ost=std::cout)
Prints a list of all MIDI messages in the given MIDIMultiTrack, a track at once.
void SetChanFrom(unsigned char c=0)
Sets the numbering of MIDI channels when messages are printed.
Contains the definition of the class MIDIMatrix.
Contains the definition of the classes MIDIMultiTrack, MIDIMultiTrackIteratorState,...