/[svn]/jlscp/trunk/src/org/linuxsampler/lscp/AbstractDevice.java
ViewVC logotype

Contents of /jlscp/trunk/src/org/linuxsampler/lscp/AbstractDevice.java

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1139 - (show annotations) (download)
Mon Apr 2 20:43:58 2007 UTC (16 years, 11 months ago) by iliev
File size: 3603 byte(s)
* upgraded to version 0.4a

1 /*
2 * jlscp - a java LinuxSampler control protocol API
3 *
4 * Copyright (C) 2005-2006 Grigor Iliev <grigor@grigoriliev.com>
5 *
6 * This file is part of jlscp.
7 *
8 * jlscp is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License version 2
10 * as published by the Free Software Foundation.
11 *
12 * jlscp is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 * GNU General Public License for more details.
16 *
17 * You should have received a copy of the GNU General Public License
18 * along with jlscp; if not, write to the Free Software
19 * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
20 * MA 02111-1307 USA
21 */
22
23 package org.linuxsampler.lscp;
24
25 import java.util.Vector;
26
27
28 /**
29 * This class provides default implementation of the <code>Device</code> interface.
30 * @author Grigor Iliev
31 */
32 public abstract class AbstractDevice implements Device {
33 private int id = -1;
34 private String driver = null;
35 private BoolParameter active = new BoolParameter("ACTIVE", true);
36
37 private final Vector<Parameter> prmList = new Vector<Parameter>();
38
39 /** Creates new instance of <code>AbstractDevice</code> */
40 public
41 AbstractDevice() {
42 }
43
44 /**
45 * Gets the numerical ID of this device.
46 * @return The numerical ID of this device or -1 if the device number is not set.
47 */
48 public int
49 getDeviceId() { return id; }
50
51 /**
52 * Sets the numerical ID of this device.
53 * @param id The new numerical ID of this device.
54 */
55 public void
56 setDeviceId(int id) { this.id = id; }
57
58 /**
59 * Gets the driver name used by this device.
60 * @return The driver name used by this device.
61 */
62 public String
63 getDriverName() { return driver; }
64
65 /**
66 * Sets the driver name of this device.
67 * @param driver The new name for this device.
68 */
69 public void
70 setDriverName(String driver) { this.driver = driver; }
71
72 /**
73 * Determines whether this device is active.
74 * @return <code>false</code> if the device is inactive and <code>true</code> otherwise.
75 */
76 public boolean
77 isActive() { return active.getValue(); }
78
79 /**
80 * Sets whether this audio output device is active or not.
81 * @param active <code>false</code> if the device is inactive and doesn't output any sound,
82 * <code>true</code> otherwise.
83 */
84 public void
85 setActive(boolean active) { this.active.setValue(active); }
86
87 /**
88 * Gets the <code>ACTIVE</code> parameter.
89 * @return A <code>Parameter<Boolean></code> instance
90 * representing the active state of the device.
91 */
92 public Parameter<Boolean>
93 getActiveParameter() { return active; }
94
95 /**
96 * Adds additional parameter to this device.
97 * @param prm The additional parameter to be added.
98 */
99 public void
100 addParameter(Parameter prm) { prmList.add(prm); }
101
102 /**
103 * Gets <code>Parameter</code> array with the additional parameters of this device.
104 * @return <code>Parameter</code> array with the additional parameters of this device.
105 */
106 public Parameter[]
107 getAdditionalParameters() { return prmList.toArray(new Parameter[prmList.size()]); }
108
109 /**
110 * Determines whether this device has additional parameters.
111 * @return <code>true</code> if this device has additional parameters,
112 * <code>false</code> otherwise.
113 */
114 public boolean
115 hasAdditionalParameters() { return !prmList.isEmpty(); }
116
117 /**
118 * Returns the numerical ID of the device.
119 * @return The numerical ID of the device.
120 */
121 public String
122 toString() { return String.valueOf(getDeviceId()); }
123 }

  ViewVC Help
Powered by ViewVC