Introduce new time for session-relative frame time, and make source interface capable...
authorDavid Robillard <d@drobilla.net>
Thu, 19 Feb 2009 05:45:11 +0000 (05:45 +0000)
committerDavid Robillard <d@drobilla.net>
Thu, 19 Feb 2009 05:45:11 +0000 (05:45 +0000)
commit8a28ea6154f78d491afe746b3a2b0230185afb91
tree35c6b974624bbfc41297dfd08a068585545cf9a0
parent0f71728a925eb8f16c14c74f0dae9fdd53406a20
Introduce new time for session-relative frame time, and make source interface capable of handling 64-bit long sessions.
sframes_t is "session frames".  The rules for time stamps are:
 - Anything relative to transport time, session position, etc, should be sframes_t
 - Anything relative to jack cycles, including the length thereof, should be nframes_t

To support sessions which exceed UINT32_MAX frames, we need to replace all the uses of
nframes_t for session time with sframes_t, and make sure the conversions are sound.
This does not depend on jack's nframes_t; that we are using the same type at all right now was an oops.

This is also be kinda nice for readability since the two different time bases have different types...

git-svn-id: svn://localhost/ardour2/branches/3.0@4636 d708f5d6-7413-0410-9779-e7cbd77b26cf
18 files changed:
gtk2_ardour/automation_line.cc
gtk2_ardour/automation_line.h
libs/ardour/ardour/audiofilesource.h
libs/ardour/ardour/audiosource.h
libs/ardour/ardour/beats_frames_converter.h
libs/ardour/ardour/midi_source.h
libs/ardour/ardour/silentfilesource.h
libs/ardour/ardour/smf_source.h
libs/ardour/ardour/sndfilesource.h
libs/ardour/ardour/source.h
libs/ardour/ardour/types.h
libs/ardour/audiosource.cc
libs/ardour/beats_frames_converter.cc
libs/ardour/midi_source.cc
libs/ardour/region.cc
libs/ardour/smf_source.cc
libs/ardour/sndfilesource.cc
libs/ardour/source.cc