summaryrefslogtreecommitdiff
path: root/libs/ardour/session_state.cc
AgeCommit message (Collapse)Author
2016-05-07make boost shared_ptr debugging a little easier to turn on/offPaul Davis
2016-05-07a few strategic LocaleGuards..Robin Gareus
..to prevent switching forth and back during individual ::state(), ::set_state() when loading/saving the session or locating.
2016-05-07Revert "Add a global state localeguard (and one for route templates)"Robin Gareus
This reverts commit 2b7a047e92bc5ebe3287860ff9c9f2fb0acb193c.
2016-05-07fix LocaleGuard contstructor (3dc77280)Robin Gareus
2016-05-07Add a global state localeguard (and one for route templates)Robin Gareus
2016-05-05we always only use the "C" locale when saving.Robin Gareus
2016-05-04OMNIBUS COMMIT: prefer const XMLNode::property method (and provide a real one)Paul Davis
2016-04-24plug some memory leaks in libardourRobin Gareus
2016-04-18add notification if Engine Rate changes and mismatches session's SRRobin Gareus
2016-04-18never ever change sample-rate saved with the session after creation.Robin Gareus
2016-04-12add a new counter (for sidechain numbering)Robin Gareus
2016-04-10expose Undo Commands to LuaRobin Gareus
Some trickery is needed here to manage object lifetimes and multiple inheritance.
2016-04-08improve elapsed time readability for large numbers.Robin Gareus
2016-04-08Profile Session::save_stateRobin Gareus
2016-02-23Implement Lua session-scriptsRobin Gareus
2016-02-22add syntax and scaffolding for MIDI binding maps to refer to selected ↵Paul Davis
tracks/busses. THIS DOES NOT WORK YET. Selection information is not available in libardour at this time
2016-02-02when looking up controllables via descriptors (e.g. generic MIDI control) ↵Paul Davis
use the new "well-known" route controllables
2016-01-19Revert "mackie: still respond to route groups visibility changes"Paul Davis
This reverts commit a9ec547457bfa65655ee946063426f1ba85b6f91.
2016-01-19mackie: still respond to route groups visibility changesPaul Davis
2016-01-18working version of new gain control designPaul Davis
2015-12-19cont'd work on plugin-state templates - #6709Robin Gareus
Refactor and consolidate code and re-use it for session-templates. This avoids recursive copying of the plugin-dir()
2015-12-07change API for accessing session MIDI ports so that (1) boost::shared_ptr<> ↵Paul Davis
is used all the time (2) we avoid using multiple functions to return different subclass versions of some ports
2015-11-20add API to read snapshot name from instant.xmlRobin Gareus
2015-11-20remember in-use snapshot/session name in instant.xmlRobin Gareus
2015-10-22Decouple Session from MidiPatchManager and reduce parsing of midnam xml filesTim Mayberry
The MidiPatchManager only requires a reference to the session to get the path to the Session midnam directory so change it so that the path is passed to MidiPatchManager::add_search_path on Session construction and removed on Session Destruction. This will also make it easier to test and reduce compile times etc. For the common case where the Session doesn't have a Session specific midnam patch files directory(for instance a new session) it won't cause a refresh and reparsing of all the midnam files. This saves about 2 seconds to load a Session on my machine(fast machine with SSD), or about half the time spent in the Session constructor for a new session. There is still going to be that initial cost of parsing the midnam files when the first session is created after starting Ardour. Options to remove that would be to parse the files asynchronously and or use a faster xml parser(eventually), neither of which seem worth doing at this stage. This change will cause a performance regression for the uncommon case where a Session with Session specific midnam files is unloaded and then another Session with Session specific midnam files is loaded as it will cause the common midnam files in midi_patch_path to be parsed twice(unload and load).
2015-10-21Add overwrite option to save_template. (default = false)André Nusser
Before it could not overwrite.
2015-10-16extend session-save dirty-flag logicRobin Gareus
Snapshot and continue working on current session incorrectly marks the session as clean.
2015-10-05use quotes for in-tree pbd/glib wrapper includeRobin Gareus
2015-10-05remove unused fstream includesRobin Gareus
2015-10-04attempt to stop transport, finish butler work, and close all files as part ↵Paul Davis
of Session > Cleanup
2015-10-04NOOP: delete trailing whitespacePaul Davis
2015-10-04Change a few instances of 'stat()' to use 'g_stat()' (for UTF8 compatibility ↵John Emmas
on Windows)
2015-09-23fix iterator after map::erase().Robin Gareus
The iterator referring to the removed element is invalidated. Other iterators remain valid.
2015-09-17use pbd's gstdio compatibility wrapperRobin Gareus
2015-09-15prepare peak-file cleanup/recreate.Robin Gareus
2015-09-15Remove ifstream / ofstream when accessing session template files (or ↵John Emmas
creating a new session from a template file) On Windows, the above classes don't support UTF-8 so let's get rid of them and use g_fopen / stringstream / fwrite() etc.
2015-09-12remove cruftRobin Gareus
2015-09-10rework peakfile handling:Robin Gareus
- copy old peak-files to new (do not require re-calc) - keep old peak-files (for now, backwards compat) - fix cleanup-sources to remove *new* peak-file - include channel-number in hash (like it was done before) see also 624f76b TODO: add Session > Cleanup > remove/re-create peaks
2015-09-03Fixes case where audiofiles used wrong peakfilesMathias Buhr
2015-08-19Add undo history related debug output for debugging Undo/Redo issuesTim Mayberry
2015-07-02alternative fix for the same problem that 9e2048decf7c567 was addressingPaul Davis
2015-07-02Don’t use invalid iterator during cleanup. fixes #6403Robin Gareus
2015-06-29push seek-after-state-loaded into butler thread, to avoid multiple threads ↵Paul Davis
doing disk i/o related stuff
2015-06-29no-op: fix whitespace/indentationPaul Davis
2015-06-29Fixed use case when session is being replaced with new session with the same ↵GZharun
name. We should check session state file (*.ardour) presence to determine if the session is new for TracksLive as TracksLive has a use case which gives user a possibility to replace existing session by clicking on it's state file when new session is being created. [To be Reviewed by] Paul Davis
2015-06-29some more information output to log during save-as, for debuggingPaul Davis
2015-06-29add more directory names to set managed via various APIs (automation, ↵Paul Davis
analysis, plugins, externals)
2015-06-29rename Session::add_session_range_location() to ::set_session_range_location()Paul Davis
2015-06-29follow various events related to playhead priority (loop changes, parameter ↵Paul Davis
changes); remove debug output
2015-06-29fix accidentally deleted return valuePaul Davis