Module java.desktop

Class MidiFileWriter


  • public abstract class MidiFileWriter
    extends Object
    A MidiFileWriter supplies MIDI file-writing services. Classes that implement this interface can write one or more types of MIDI file from a Sequence object.
    Since:
    1.3
    • Constructor Summary

      Constructors 
      Constructor Description
      MidiFileWriter()  
    • Method Summary

      Modifier and Type Method Description
      abstract int[] getMidiFileTypes()
      Obtains the set of MIDI file types for which file writing support is provided by this file writer.
      abstract int[] getMidiFileTypes​(Sequence sequence)
      Obtains the file types that this file writer can write from the sequence specified.
      boolean isFileTypeSupported​(int fileType)
      Indicates whether file writing support for the specified MIDI file type is provided by this file writer.
      boolean isFileTypeSupported​(int fileType, Sequence sequence)
      Indicates whether a MIDI file of the file type specified can be written from the sequence indicated.
      abstract int write​(Sequence in, int fileType, File out)
      Writes a stream of bytes representing a MIDI file of the file type indicated to the external file provided.
      abstract int write​(Sequence in, int fileType, OutputStream out)
      Writes a stream of bytes representing a MIDI file of the file type indicated to the output stream provided.
    • Constructor Detail

      • MidiFileWriter

        public MidiFileWriter()
    • Method Detail

      • getMidiFileTypes

        public abstract int[] getMidiFileTypes()
        Obtains the set of MIDI file types for which file writing support is provided by this file writer.
        Returns:
        array of file types. If no file types are supported, an array of length 0 is returned.
      • getMidiFileTypes

        public abstract int[] getMidiFileTypes​(Sequence sequence)
        Obtains the file types that this file writer can write from the sequence specified.
        Parameters:
        sequence - the sequence for which MIDI file type support is queried
        Returns:
        array of file types. If no file types are supported, returns an array of length 0.
        Throws:
        NullPointerException - if sequence is null
      • isFileTypeSupported

        public boolean isFileTypeSupported​(int fileType)
        Indicates whether file writing support for the specified MIDI file type is provided by this file writer.
        Parameters:
        fileType - the file type for which write capabilities are queried
        Returns:
        true if the file type is supported, otherwise false
      • isFileTypeSupported

        public boolean isFileTypeSupported​(int fileType,
                                           Sequence sequence)
        Indicates whether a MIDI file of the file type specified can be written from the sequence indicated.
        Parameters:
        fileType - the file type for which write capabilities are queried
        sequence - the sequence for which file writing support is queried
        Returns:
        true if the file type is supported for this sequence, otherwise false
        Throws:
        NullPointerException - if sequence is null
      • write

        public abstract int write​(Sequence in,
                                  int fileType,
                                  File out)
                           throws IOException
        Writes a stream of bytes representing a MIDI file of the file type indicated to the external file provided.
        Parameters:
        in - sequence containing MIDI data to be written to the external file
        fileType - type of the file to be written to the external file
        out - external file to which the file data should be written
        Returns:
        the number of bytes written to the file
        Throws:
        IOException - if an I/O exception occurs
        IllegalArgumentException - if the file type is not supported by this file writer
        NullPointerException - if in or out are null
        See Also:
        isFileTypeSupported(int, Sequence), getMidiFileTypes(Sequence)