1 /*
2  * Created on Feb 6, 2009
3  * Created by Paul Gardner
4  *
5  * Copyright (C) Azureus Software, Inc, All Rights Reserved.
6  *
7  * This program is free software; you can redistribute it and/or
8  * modify it under the terms of the GNU General Public License
9  * as published by the Free Software Foundation; either version 2
10  * of the License, or (at your option) any later version.
11  * This program is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14  * GNU General Public License for more details.
15  * You should have received a copy of the GNU General Public License
16  * along with this program; if not, write to the Free Software
17  * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
18  */
19 
20 
21 package com.aelitis.azureus.core.devices;
22 
23 import org.gudy.azureus2.plugins.disk.DiskManagerFileInfo;
24 
25 public interface
26 TranscodeQueue
27 {
28 	public TranscodeJob
add( TranscodeTarget target, TranscodeProfile profile, DiskManagerFileInfo file, boolean add_stopped )29 	add(
30 		TranscodeTarget			target,
31 		TranscodeProfile		profile,
32 		DiskManagerFileInfo		file,
33 		boolean					add_stopped )
34 
35 		throws TranscodeException;
36 
37 	public TranscodeJob
add( TranscodeTarget target, TranscodeProfile profile, DiskManagerFileInfo file, int transcode_requirement, boolean add_stopped )38 	add(
39 		TranscodeTarget			target,
40 		TranscodeProfile		profile,
41 		DiskManagerFileInfo		file,
42 		int						transcode_requirement,		// from target.TRANSCODE_<x>
43 		boolean					add_stopped )
44 
45 		throws TranscodeException;
46 
47 	public TranscodeJob[]
getJobs()48 	getJobs();
49 
50 	public void
pause()51 	pause();
52 
53 	public boolean
isPaused()54 	isPaused();
55 
56 	public void
resume()57 	resume();
58 
59 	public int
getJobCount()60 	getJobCount();
61 
62 	public TranscodeJob
getCurrentJob()63 	getCurrentJob();
64 
65 	public boolean
isTranscoding()66 	isTranscoding();
67 
68 	public long
getMaxBytesPerSecond()69 	getMaxBytesPerSecond();
70 
71 	public void
setMaxBytesPerSecond( long max )72 	setMaxBytesPerSecond(
73 		long		max );
74 
75 	public void
addListener( TranscodeQueueListener listener )76 	addListener(
77 		TranscodeQueueListener		listener );
78 
79 	public void
removeListener( TranscodeQueueListener listener )80 	removeListener(
81 		TranscodeQueueListener		listener );
82 
83 	public void
addActionListener( TranscodeQueueActionListener listener )84 	addActionListener(
85 		TranscodeQueueActionListener		listener );
86 
87 	public void
removeActionListener( TranscodeQueueActionListener listener )88 	removeActionListener(
89 		TranscodeQueueActionListener		listener );
90 }
91