summaryrefslogtreecommitdiff
path: root/libs/midi++2/midi++
AgeCommit message (Collapse)Author
2016-12-03Remove Evoral::MIDIEventDavid Robillard
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.
2016-12-03Factor out and extend MIDIXML implementationDavid Robillard
2016-11-29Making buildable under OpenBSD.David Carlier
2016-10-29Allow to dynamically un/load Midnam PatchesRobin Gareus
2016-06-26Enable build for FreeBSD (part 1/2)Robin Gareus
Adopted from Michael Beer -- GH pull-request #232 with minor changes: * rebased on master, * removed trailing whitespace, * don't explicitly change saved configuration defaults (wscript) * moved sys/wait (WNOHANG) to header include * separate changes in GUI and lib
2016-02-01change API of MIDI::Port::drain() to include a maximum blocking timePaul Davis
2015-11-23more corrections for libmidi++ (N)RPN APIPaul Davis
2015-11-23change API for libmidi++ RPN-related signals to be more usefulPaul Davis
2015-11-23add (N)RPN handling to libmidi++Paul Davis
2015-10-22Store the file path when constructing MidiNameDocumentTim Mayberry
This is so we can compare and see if we have already parsed the file
2015-10-05NOOP, remove trailing tabs/whitespace.Robin Gareus
2015-10-04globally remove all trailing whitespace from ardour code base.Paul Davis
Paul Davis was responsible for introducing almost all of this.
2014-12-17Remove some aborts that don't really need to be.David Robillard
Enforce PatchPrimaryKey sanity at the type level rather than attempting to check for it everywhere. Remove dead file.
2014-10-22require a timestamp on MIDI::MachineControl::send()Paul Davis
2014-09-09plug a major mem hog.Robin Gareus
(default empty session is now ~140MB RSS, was 280MB) libXML memory was only free() at exit
2014-04-28merge (squash) with scenechange topic branch to provide MIDI-driven scene ↵Paul Davis
change markers
2014-04-10remove inclusion of jack.h so that we can build on a platform without JACKPaul Davis
2014-03-02remove recently added conflation of mingw64 and msvc with respect to symbol ↵Paul Davis
export
2014-03-01when mingw is mingw64, it appears that we need to use __declspec() and not ↵Paul Davis
__attribute__((visibility)) for export control
2014-01-11fix merge with masterPaul Davis
2014-01-10Support midnam controller value labels.David Robillard
2014-01-10Merge windows+cc branch into cairocanvas branch. Not finished, need to now ↵Paul Davis
merge windows branch to get changes from there
2013-12-05Only use __declspec(dllimport/dllexport) for MSVC compilerTim Mayberry
Use the gcc visibility attributes when building with the MinGW compiler(gcc). GCC also supports the __declspec syntax but it will not compile at the moment until the issues(which may not even be exactly the same issues as with MSVC) are resolved.
2013-12-03fix up wscript/build issues in exportvis after merge with masterPaul Davis
2013-11-27add yet more missing parts of previous commit re: libmidi++ and JACK (files ↵Paul Davis
not saved in emacs, sigh)
2013-11-27add missing parts of previous commit re: libmidi++ and JACK (files not saved ↵Paul Davis
in emacs, sigh)
2013-11-27remove unintended linkage between libmidipp and jackPaul Davis
2013-10-18reverse the visibility.h files assumptions that we don't build shared libs ↵Paul Davis
by default This avoids having to define define LIBFOO_DLL=1 all over the place. If we ever go with static libs we will need to define LIBFOO_STATIC=1 but hopefully in some central location like the top level wscript. Oh, and I also dropped support for gcc older than version 4.x because ardour will already not build on such an old version.
2013-10-18Merge remote-tracking branch 'remotes/origin/exportvis' into windows+ccJohn Emmas
Conflicts (hopefully resolved): gtk2_ardour/wscript libs/ardour/ardour/audioregion.h libs/ardour/ardour/debug.h libs/ardour/ardour/directory_names.h libs/ardour/ardour/filesystem_paths.h libs/ardour/ardour/session_event.h libs/gtkmm2ext/gtkmm2ext/utils.h libs/panners/1in2out/wscript libs/panners/2in2out/wscript libs/panners/vbap/wscript libs/pbd/pbd/debug.h libs/pbd/pbd/file_utils.h libs/pbd/pbd/pathexpand.h libs/pbd/pbd/ringbuffer.h libs/pbd/pbd/ringbufferNPT.h libs/pbd/pbd/search_path.h libs/pbd/pbd/stacktrace.h libs/pbd/pbd/uuid.h libs/pbd/pbd/uuid_boost.h libs/surfaces/control_protocol/control_protocol/basic_ui.h libs/surfaces/control_protocol/control_protocol/control_protocol.h
2013-10-17add -fvisibility=hidden to libmidi++ and make things workPaul Davis
2013-10-17add export control to libevoralPaul Davis
2013-10-17export-ify libmidippPaul Davis
2013-10-17new file for libmidi++ export controlPaul Davis
2013-09-12incomplete merge of master into windows (requires upcoming changes to master ↵Paul Davis
to be complete)
2013-08-07major redesign of MIDI port heirarchy and management (part 2)Paul Davis
2013-08-07major redesign of MIDI port heirarchy and managementPaul Davis
basic, very flaky functionality is back. program unstable at present
2013-07-25'libs/midi++2' - Platform specific includesJohn Emmas
2013-07-24part-way through getting the audioengine changes to compilePaul Davis
2013-07-13Disable non-realtime midi ports in windows build - THIS NEEDS FIXINGPaul Davis
2013-07-11Include pthread.h as it isn't included via jack headers on windowsPaul Davis
2013-03-17remove cruft (old cvsignore files)Robin Gareus
2013-01-20Show matching controller name in automation lane header.David Robillard
Completely eliminate static MIDI controller name code. Reduce dependency on midnam_patch.h (which would have saved me several hours if I did it earlier). Store controller name numbers as an integer. Keep controller names in a map keyed by int instead of a list for fast lookup. More cleanup of MIDI::Name code. git-svn-id: svn://localhost/ardour2/branches/3.0@13927 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-20Error checking string to int conversion from midnam files.David Robillard
Use const references where appropriate. Fix incorrect use of (either confusingly named or often abused) Patch tag Number attribute. git-svn-id: svn://localhost/ardour2/branches/3.0@13923 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-20Add General MIDI drum note names and patch names.David Robillard
Support loading note names per ChannelNameSet (like GM) in addition to per Patch (like DM5). git-svn-id: svn://localhost/ardour2/branches/3.0@13913 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-20Support note names from midnam files (tested with the DM5).David Robillard
Do this via a simple MasterDeviceNames::note_name() function. The same really needs to be done for program names, this stuff is absolutely brutal to use. Store note names in a vector indexed by number instead of a list with string "numbers" for reasonable lookup time. Make some references const that should be. git-svn-id: svn://localhost/ardour2/branches/3.0@13908 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-19Use a std::set for MIDI device models so the combo is sorted and the user ↵David Robillard
can find things. git-svn-id: svn://localhost/ardour2/branches/3.0@13902 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-19Add standard MIDI midnam file and remove hard coded equivalent.David Robillard
Accordingly, make "generic" MIDI truly generic, just numbered controllers. Break up MIDI name UI stuff into manageable functions of reasonable size. Add convenient method to MIDINameDocument for getting the names for a device. Tolerate comments in MIDINameDocument ControlNameList. Can't remove the MIDI name code just yet, since it's still erroneously used by Automatable::describe_parameter(). This is the cause of a bug where the name on the automation lane does not match that in the menu. The plan is to make a very simple pure abstract interface for getting MIDI names, and make it possible to set one for Automatable (or perhaps pass it to describe_parameter()). Thus we'll be on the way to supporting names from sources other than midnam files, namely plugins. git-svn-id: svn://localhost/ardour2/branches/3.0@13895 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-19Hide MIDI device mode selector unless there is actually more than one mode.David Robillard
Since this is usually not the case, showing this all the time as before was so confusing everyone thought it was broken (myself included). Changing that show_all() to a show() might have consequences, but it seems to work fine and we really shouldn't be using show_all() anyway. git-svn-id: svn://localhost/ardour2/branches/3.0@13889 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-16Preliminary support for named MIDI controllers via midname files.David Robillard
Add midnam file for Moog Minitaur controller names. git-svn-id: svn://localhost/ardour2/branches/3.0@13852 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-04merge Marcel Bonnet's patches for Free-BSDRobin Gareus
(may need further cleanup: compare with timbyr's windows patch, verify fst/vsti + ALSA) git-svn-id: svn://localhost/ardour2/branches/3.0@13774 d708f5d6-7413-0410-9779-e7cbd77b26cf