1
2
3
4
5
6
7
8
9
10
11
12
13
14 package nl.tudelft.simulation.messaging.devices.components;
15
16 import nl.tudelft.simulation.messaging.Message;
17 import nl.tudelft.simulation.messaging.devices.types.DeviceType;
18
19 /***
20 * Abstract implementation of a sending device. The send method still needs to
21 * be implemented. <br>
22 * <br>
23 * Copyright (c) 2003-2005 Delft University of Technology, Jaffalaan 5, 2628 BX
24 * Delft, the Netherlands. All rights reserved.
25 *
26 * See for project information <a href="http://www.simulation.tudelft.nl/">
27 * www.simulation.tudelft.nl </a>.
28 *
29 * The source code and binary code of this software is proprietary information
30 * of Delft University of Technology.
31 *
32 * @author <a href="http://www.tbm.tudelft.nl/webstaf/peterja/index.htm">Peter
33 * Jacobs </a>, <a
34 * href="mailto:s.p.a.vanhouten@tbm.tudelft.nl">Stijn-Pieter van Houten
35 * </a>, <a
36 * href="http://www.tbm.tudelft.nl/webstaf/alexandv/index.htm">Alexander
37 * Verbraeck </a>
38 * @version $$Revision: 1.3 $$ $$Date: 2005/04/08 11:29:12 $$
39 */
40 public abstract class SendingDevice extends Device implements
41 SendingDeviceInterface
42 {
43 /*** the serial version uid */
44 private static final long serialVersionUID = 12L;
45
46 /***
47 * constructs a new device, take the transmission delay and frequency from
48 * the DeviceType.
49 *
50 * @param name the name or description of the device
51 * @param deviceType the type of device
52 */
53 public SendingDevice(final String name, final DeviceType deviceType)
54 {
55 super(name, deviceType);
56 }
57
58 /***
59 * constructs a new device, override the default transmission delay and
60 * frequency from the DeviceType.
61 *
62 * @param name the name or description of the device
63 * @param deviceType the type of device
64 * @param transmissionDelay the default logarithmic transmission delay of
65 * the device.
66 * @param transmissionFrequency the maximum transmission frequency of the
67 * device.
68 */
69 public SendingDevice(final String name, final DeviceType deviceType,
70 final int transmissionDelay, final double transmissionFrequency)
71 {
72 super(name, deviceType, transmissionDelay, transmissionFrequency);
73 }
74
75 /***
76 * @see nl.tudelft.simulation.messaging.devices.components.SendingDeviceInterface#send(nl.tudelft.simulation.messaging.Message)
77 */
78 public abstract Object send(final Message message);
79 }