package bass;

import com.sun.jna.Library;
import com.sun.jna.Native;
import com.sun.jna.Pointer;

import bass.BassLibrary.BASS_FILEPROCS;
import bass.BassLibrary.DOWNLOADPROC;

public interface BassOPUSLibrary extends Library {
	BassOPUSLibrary BASS_OPUS = (BassOPUSLibrary) Native.load("bassopus",BassOPUSLibrary.class);
	public interface Constant{
		// BASS_CHANNELINFO type
		public static final int BASS_CTYPE_STREAM_OPUS = 0x11200;

		// Additional attributes
		public static final int BASS_ATTRIB_OPUS_ORIGFREQ = 0x13000;
	}
	public int BASS_OPUS_StreamCreateFile(String file, long offset, long length, int flags);
	public int BASS_OPUS_StreamCreateFile(Pointer file, long offset, long length, int flags);
	public int BASS_OPUS_StreamCreateURL(String url, int offset, int flags, DOWNLOADPROC proc, Pointer user);
	public int BASS_OPUS_StreamCreateFileUser(int system, int flags, BASS_FILEPROCS procs, Pointer user);
}
