/[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 784 - (show annotations) (download)
Mon Oct 10 14:55:44 2005 UTC (18 years, 6 months ago) by iliev
File size: 3300 byte(s)
* Updating to version 0.3a (see ChangeLog)

1 /*
2 * jlscp - a java LinuxSampler control protocol API
3 *
4 * Copyright (C) 2005 Grigor Kirilov Iliev
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 boolean active = false;
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; }
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 = active; }
86
87 /**
88 * Adds additional parameter to this device.
89 * @param prm The additional parameter to be added.
90 */
91 public void
92 addParameter(Parameter prm) { prmList.add(prm); }
93
94 /**
95 * Gets <code>Parameter</code> array with the additional parameters of this device.
96 * @return <code>Parameter</code> array with the additional parameters of this device.
97 */
98 public Parameter[]
99 getAdditionalParameters() { return prmList.toArray(new Parameter[prmList.size()]); }
100
101 /**
102 * Determines whether this device has additional parameters.
103 * @return <code>true</code> if this device has additional parameters,
104 * <code>false</code> otherwise.
105 */
106 public boolean
107 hasAdditionalParameters() { return !prmList.isEmpty(); }
108
109 /**
110 * Returns the numerical ID of the device.
111 * @return The numerical ID of the device.
112 */
113 public String
114 toString() { return String.valueOf(getDeviceID()); }
115 }

  ViewVC Help
Powered by ViewVC