summaryrefslogtreecommitdiff
path: root/libs/ardour/ardour/export_file_io.h
diff options
context:
space:
mode:
Diffstat (limited to 'libs/ardour/ardour/export_file_io.h')
-rw-r--r--libs/ardour/ardour/export_file_io.h42
1 files changed, 21 insertions, 21 deletions
diff --git a/libs/ardour/ardour/export_file_io.h b/libs/ardour/ardour/export_file_io.h
index 0df2f99e29..48d5984f78 100644
--- a/libs/ardour/ardour/export_file_io.h
+++ b/libs/ardour/ardour/export_file_io.h
@@ -45,9 +45,9 @@ class ExportFileWriter
std::string filename () const { return _filename; }
nframes_t position () const { return _position; }
-
+
void set_position (nframes_t position) { _position = position; }
-
+
protected:
ExportFileWriter (std::string filename) : _filename (filename) {}
@@ -99,58 +99,58 @@ class ExportTempFile : public SndfileWriter<float>, public GraphSource<float>
public:
ExportTempFile (uint32_t channels, nframes_t samplerate);
~ExportTempFile () {}
-
+
/// Causes the file to be read from the beginning again
void reset_read () { reading = false; }
nframes_t read (float * data, nframes_t frames);
-
+
/* Silence management */
-
+
nframes_t trim_beginning (bool yn = true);
nframes_t trim_end (bool yn = true);
-
+
void set_silence_beginning (nframes_t frames);
void set_silence_end (nframes_t frames);
private:
/* File access */
-
+
sf_count_t get_length ();
sf_count_t get_position ();
sf_count_t get_read_position (); // get position seems to default to the write pointer
sf_count_t locate_to (nframes_t frames);
sf_count_t _read (float * data, nframes_t frames);
-
+
uint32_t channels;
bool reading;
-
+
/* Silence related */
-
+
/* start and end are used by read() */
-
+
nframes_t start;
nframes_t end;
-
+
/* these are the silence processing results and state */
-
+
void process_beginning ();
void process_end ();
-
+
bool beginning_processed;
bool end_processed;
-
+
nframes_t silent_frames_beginning;
nframes_t silent_frames_end;
-
+
/* Silence to add to start and end */
-
+
nframes_t silence_beginning;
nframes_t silence_end;
-
+
/* Takes care that the end postion gets set at some stage */
-
+
bool end_set;
-
+
};
class ExportFileFactory
@@ -160,7 +160,7 @@ class ExportFileFactory
typedef GraphSink<float> FloatSink;
typedef boost::shared_ptr<FloatSink> FloatSinkPtr;
typedef boost::shared_ptr<ExportFileWriter> FileWriterPtr;
-
+
typedef std::pair<FloatSinkPtr, FileWriterPtr> FilePair;
static FilePair create (FormatPtr format, uint32_t channels, Glib::ustring const & filename);