David Robillard
08fffeffec
It is slightly questionable whether type specific methods like velocity() belong on Event at all, these may be better off as free functions. However the code currently uses them as methods in many places, and it seems like a step in the right direction, since, for example, we might some day have events that have a velocity but aren't stored as MIDI messages (e.g. if Ardour uses an internal musical model that is more expressive). In any case, the former inheritance and plethora of sloppy casts is definitely not the right thing.
43 lines
1.3 KiB
C
43 lines
1.3 KiB
C
/*
|
|
Copyright (C) 2007 Paul Davis
|
|
|
|
This program is free software; you can redistribute it and/or modify
|
|
it under the terms of the GNU General Public License as published by
|
|
the Free Software Foundation; either version 2 of the License, or
|
|
(at your option) any later version.
|
|
|
|
This program is distributed in the hope that it will be useful,
|
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
GNU General Public License for more details.
|
|
|
|
You should have received a copy of the GNU General Public License
|
|
along with this program; if not, write to the Free Software
|
|
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
|
|
|
*/
|
|
|
|
#ifndef __libmidipp_midi_event_h__
|
|
#define __libmidipp_midi_event_h__
|
|
|
|
#include <stdint.h>
|
|
#include <cstdlib>
|
|
#include <cstring>
|
|
#include <sstream>
|
|
#include <assert.h>
|
|
|
|
#include "midi++/libmidi_visibility.h"
|
|
#include "midi++/types.h"
|
|
#include "midi++/events.h"
|
|
#include "pbd/xml++.h"
|
|
|
|
/** If this is not defined, all methods of MidiEvent are RT safe
|
|
* but MidiEvent will never deep copy and (depending on the scenario)
|
|
* may not be usable in STL containers, signals, etc.
|
|
*/
|
|
#define EVORAL_EVENT_ALLOC 1
|
|
|
|
#include "evoral/Event.hpp"
|
|
|
|
#endif /* __libmidipp_midi_event_h__ */
|