Module org.refcodes.audio
Package org.refcodes.audio
Class AbstractCsvSampleWriter<S extends SoundSample,B extends CsvSampleWriter<S,B>>
- java.lang.Object
-
- org.refcodes.audio.AbstractCsvSampleWriter<S,B>
-
- Type Parameters:
S- TheSoundSample(sub-)type on which theSampleWriterimplementation is to operate on.B- TheCsvSampleWriterimplementing thisAbstractCsvSampleWriter.
- All Implemented Interfaces:
AutoCloseable,CsvSampleWriter<S,B>,SampleWriter<S,B>,SamplingRateAccessor,SamplingRateAccessor.SamplingRateBuilder<B>,SamplingRateAccessor.SamplingRateMutator,SamplingRateAccessor.SamplingRateProperty,org.refcodes.io.RowWriter<S>
- Direct Known Subclasses:
CsvMonoSampleWriter,CsvSoundSampleWriter
public abstract class AbstractCsvSampleWriter<S extends SoundSample,B extends CsvSampleWriter<S,B>> extends Object implements CsvSampleWriter<S,B>
TheAbstractCsvSampleWriterprovides a foundation to write sound samples to a CSV file.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.refcodes.audio.SamplingRateAccessor
SamplingRateAccessor.SamplingRateBuilder<B extends SamplingRateAccessor.SamplingRateBuilder<B>>, SamplingRateAccessor.SamplingRateMutator, SamplingRateAccessor.SamplingRateProperty
-
-
Field Summary
Fields Modifier and Type Field Description protected org.refcodes.tabular.CsvStringRecordWriter_csvWriterprotected CsvDeltaMode_deltaModeprotected boolean_isSamplingRateDirty
-
Constructor Summary
Constructors Modifier Constructor Description AbstractCsvSampleWriter(File aFile)Constructs theAbstractCsvSampleWriterfor writing sound samples to a CSV file or stream.AbstractCsvSampleWriter(File aFile, CsvDeltaMode aDeltaMode)Constructs theAbstractCsvSampleWriterfor writing sound samples to a CSV file or stream.AbstractCsvSampleWriter(OutputStream aOutputStream)Constructs theAbstractCsvSampleWriterfor writing sound samples to a CSV file or stream.AbstractCsvSampleWriter(OutputStream aOutputStream, CsvDeltaMode aDeltaMode)Constructs theAbstractCsvSampleWriterfor writing sound samples to a CSV file or stream.AbstractCsvSampleWriter(PrintStream aPrintStream)Constructs theAbstractCsvSampleWriterfor writing sound samples to a CSV file or stream.AbstractCsvSampleWriter(PrintStream aPrintStream, CsvDeltaMode aDeltaMode)Constructs theAbstractCsvSampleWriterfor writing sound samples to a CSV file or stream.protectedAbstractCsvSampleWriter(org.refcodes.tabular.CsvStringRecordWriter aCsvFriter, CsvDeltaMode aDeltaMode)Constructs theAbstractCsvSampleWriterfor writing sound samples to a CSV file or stream.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclose()protected static Stringformat(String aDouble)Hackishly removes trailing zeros if there is no additional value from them unifying the decimal point.protected static doubletoDouble(String aDouble)Converts a string to a double by hackishly removing trailing zeros if there is no additional value from them and unifying the decimal point.protected static StringtoString(double aDouble)Converts a double to a string by hackishly removing trailing zeros if there is no additional value from them unifying the decimal point.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.refcodes.audio.SampleWriter
writeNext
-
Methods inherited from interface org.refcodes.audio.SamplingRateAccessor
getSamplingRate
-
Methods inherited from interface org.refcodes.audio.SamplingRateAccessor.SamplingRateBuilder
withSamplingRate
-
Methods inherited from interface org.refcodes.audio.SamplingRateAccessor.SamplingRateMutator
setSamplingRate
-
Methods inherited from interface org.refcodes.audio.SamplingRateAccessor.SamplingRateProperty
letSamplingRate
-
-
-
-
Field Detail
-
_csvWriter
protected org.refcodes.tabular.CsvStringRecordWriter _csvWriter
-
_deltaMode
protected CsvDeltaMode _deltaMode
-
_isSamplingRateDirty
protected boolean _isSamplingRateDirty
-
-
Constructor Detail
-
AbstractCsvSampleWriter
public AbstractCsvSampleWriter(File aFile) throws FileNotFoundException
Constructs theAbstractCsvSampleWriterfor writing sound samples to a CSV file or stream.- Parameters:
aFile- TheFilewhere to write the CSV records to.- Throws:
FileNotFoundException- If the given file object does not denote an existing, writable regular file and a new regular file of that name cannot be created, or if some other error occurs while opening or creating the file.
-
AbstractCsvSampleWriter
public AbstractCsvSampleWriter(OutputStream aOutputStream)
Constructs theAbstractCsvSampleWriterfor writing sound samples to a CSV file or stream.- Parameters:
aOutputStream- TheOutputStreamwhere to write the CSV records to.
-
AbstractCsvSampleWriter
public AbstractCsvSampleWriter(PrintStream aPrintStream)
Constructs theAbstractCsvSampleWriterfor writing sound samples to a CSV file or stream.- Parameters:
aPrintStream- ThePrintStreamwhere to write the CSV records to.
-
AbstractCsvSampleWriter
public AbstractCsvSampleWriter(File aFile, CsvDeltaMode aDeltaMode) throws FileNotFoundException
Constructs theAbstractCsvSampleWriterfor writing sound samples to a CSV file or stream.- Parameters:
aFile- TheFilewhere to write the CSV records to.aDeltaMode- TheCsvDeltaModeto use when writing the CSV rows.- Throws:
FileNotFoundException- If the given file object does not denote an existing, writable regular file and a new regular file of that name cannot be created, or if some other error occurs while opening or creating the file.
-
AbstractCsvSampleWriter
public AbstractCsvSampleWriter(OutputStream aOutputStream, CsvDeltaMode aDeltaMode)
Constructs theAbstractCsvSampleWriterfor writing sound samples to a CSV file or stream.- Parameters:
aOutputStream- TheOutputStreamwhere to write the CSV records to.aDeltaMode- TheCsvDeltaModeto use when writing the CSV rows.
-
AbstractCsvSampleWriter
public AbstractCsvSampleWriter(PrintStream aPrintStream, CsvDeltaMode aDeltaMode)
Constructs theAbstractCsvSampleWriterfor writing sound samples to a CSV file or stream.- Parameters:
aPrintStream- ThePrintStreamwhere to write the CSV records to.aDeltaMode- TheCsvDeltaModeto use when writing the CSV rows.
-
AbstractCsvSampleWriter
protected AbstractCsvSampleWriter(org.refcodes.tabular.CsvStringRecordWriter aCsvFriter, CsvDeltaMode aDeltaMode)Constructs theAbstractCsvSampleWriterfor writing sound samples to a CSV file or stream.- Parameters:
aCsvFriter- TheCsvStringRecordWriterwith which to write the CSV records with.aDeltaMode- TheCsvDeltaModeto use when writing the CSV rows.
-
-
Method Detail
-
close
public void close() throws IOException- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceSampleWriter<S extends SoundSample,B extends CsvSampleWriter<S,B>>- Throws:
IOException
-
toString
protected static String toString(double aDouble)
Converts a double to a string by hackishly removing trailing zeros if there is no additional value from them unifying the decimal point.- Parameters:
aDouble- The double to be converted to a string.- Returns:
- The formatted double without any trailing zeros.
-
toDouble
protected static double toDouble(String aDouble)
Converts a string to a double by hackishly removing trailing zeros if there is no additional value from them and unifying the decimal point.- Parameters:
aDouble- The double from which to remove trailing zeros.- Returns:
- The formatted double without any trailing zeros.
-
-