summaryrefslogtreecommitdiff
path: root/src/net/tuschhcm/routercontrol/router/Router.java
blob: d6fe2dd3db4abb509bd31d872627986701c85732 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
package net.tuschhcm.routercontrol.router;

/**
 * Interface specification for a router
 */
public interface Router {
	/**
	 * Send the given input to the given output.
	 * 
	 * @param output
	 * @param input
	 * 
	 * @throws IllegalArgumentException if input or output are out of range.
	 */
	public void switchInput(int output, int input) throws IllegalArgumentException;
	
	/**
	 * Power on or power off the router
	 * 
	 * @param True to turn on the router 
	 */
	public void setPower(boolean on);
	
	/**
	 * Enable or disable physical controls
	 * @param enabled true to disable the controls.
	 */
	public void setLockControls(boolean enabled);
}