1 /*
2  * Created on Jul 5, 2007
3  * Created by Paul Gardner
4  * Copyright (C) Azureus Software, Inc, All Rights Reserved.
5  *
6  * This program is free software; you can redistribute it and/or
7  * modify it under the terms of the GNU General Public License
8  * as published by the Free Software Foundation; either version 2
9  * of the License, or (at your option) any later version.
10  * This program is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13  * GNU General Public License for more details.
14  * You should have received a copy of the GNU General Public License
15  * along with this program; if not, write to the Free Software
16  * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
17  *
18  */
19 
20 
21 package com.aelitis.azureus.core.speedmanager;
22 
23 public interface
24 SpeedManagerLimitEstimate
25 {
26 	public static final float TYPE_UNKNOWN = -0.1f;
27 	public static final float TYPE_ESTIMATED =  0.0f;
28 	public static final float TYPE_CHOKE_ESTIMATED =  0.5f;
29 	public static final float TYPE_MEASURED_MIN =  0.8f;
30 	public static final float TYPE_MEASURED =  0.9f;
31 	public static final float TYPE_MANUAL =  1.0f;
32 
33 	public int
getBytesPerSec()34 	getBytesPerSec();
35 
36 		/**
37 		 * One of the above constants
38 		 * @return
39 		 */
40 
41 	public float
getEstimateType()42 	getEstimateType();
43 
44 		/**
45 		 * For estimated limits:
46 		 * -1 = estimate derived from bad metrics
47 		 * +1 = estimate derived from good metric
48 		 * <1 x > -1 = relative goodness of metric
49 		 * @return
50 		 */
51 
52 	public float
getMetricRating()53 	getMetricRating();
54 
55 	public int[][]
getSegments()56 	getSegments();
57 
58 	public long
getWhen()59 	getWhen();
60 
61 	public String
getString()62 	getString();
63 }
64