many changes, large and small, related to smart mode editing, range/region selection...
[ardour.git] / libs / ardour / ardour / export_format_specification.h
index 9594485a911c4846e6fd2a47f25dbd336a470865..4bf3ed40133a8749ebf43594c2ef6164c193a634 100644 (file)
@@ -47,7 +47,7 @@ class ExportFormatSpecification : public ExportFormatBase {
                Time (Session & session) : AnyTime (), session (session) {}
                Time & operator= (AnyTime const & other);
 
-               nframes_t get_frames (nframes_t target_rate) const;
+               framecnt_t get_frames_at (framepos_t position, framecnt_t target_rate) const;
 
                /* Serialization */
 
@@ -93,6 +93,8 @@ class ExportFormatSpecification : public ExportFormatBase {
        void set_normalize_target (float value) { _normalize_target = value; }
 
        void set_tag (bool tag_it) { _tag = tag_it; }
+       void set_with_cue (bool yn) { _with_cue = yn; }
+       void set_with_toc (bool yn) { _with_toc = yn; }
 
        void set_silence_beginning (AnyTime const & value) { _silence_beginning = value; }
        void set_silence_end (AnyTime const & value) { _silence_end = value; }
@@ -120,14 +122,15 @@ class ExportFormatSpecification : public ExportFormatBase {
        bool trim_end () const { return _trim_end; }
        bool normalize () const { return _normalize; }
        float normalize_target () const { return _normalize_target; }
+       bool with_toc() const { return _with_toc; }
+       bool with_cue() const { return _with_cue; }
 
        bool tag () const { return _tag && supports_tagging; }
 
-       nframes_t silence_beginning () const { return _silence_beginning.get_frames (sample_rate()); }
-       nframes_t silence_end () const { return _silence_end.get_frames (sample_rate()); }
-
-       nframes_t silence_beginning (nframes_t samplerate) const { return _silence_beginning.get_frames (samplerate); }
-       nframes_t silence_end (nframes_t samplerate) const { return _silence_end.get_frames (samplerate); }
+       framecnt_t silence_beginning_at (framepos_t position, framecnt_t samplerate) const
+               { return _silence_beginning.get_frames_at (position, samplerate); }
+       framecnt_t silence_end_at (framepos_t position, framecnt_t samplerate) const
+               { return _silence_end.get_frames_at (position, samplerate); }
 
        AnyTime silence_beginning_time () const { return _silence_beginning; }
        AnyTime silence_end_time () const { return _silence_end; }
@@ -168,6 +171,8 @@ class ExportFormatSpecification : public ExportFormatBase {
 
        bool            _normalize;
        float           _normalize_target;
+       bool            _with_toc;
+       bool            _with_cue;
 
        /* serialization helpers */