public interface WirelessChannel extends Actor, Nameable, PropertyTransformer, ChannelListener
The transmitter can call the channel's transmit() method to deliver data to its corresponding receivers. It can specify the transmission properties by a record token including the transmission range, transmission power. The transmit properties may be modified by the channel model or by some property transformers(@see PropertyTransformer) during the transmission to take into account channel losses, antenna gain, noise, etc.
Channel listeners may also be added to this channel.
| Yellow (cxh) |
| Green (cxh) |
COMPLETED, NOT_READY, STOP_ITERATING| Modifier and Type | Method and Description |
|---|---|
void |
addChannelListener(ChannelListener listener)
Add a channel listener to listen for transmissions on this channel.
|
ChannelPort |
getChannelPort()
Return a channel port that can be used to set type constraints
between senders and receivers.
|
java.util.List |
listeningInputPorts()
Return a list of input ports that can potentially receive data
from this channel.
|
java.util.List |
listeningOutputPorts()
Return a list of output ports that can potentially receive data
from this channel.
|
void |
registerPropertyTransformer(PropertyTransformer transformer,
WirelessIOPort port)
Register a property transformer for transmissions from the
specified port.
|
void |
removeChannelListener(ChannelListener listener)
Remove a channel listener for transmissions on this channel.
|
java.util.List |
sendingInputPorts()
Return a list of input ports that can potentially send data
to this channel.
|
java.util.List |
sendingOutputPorts()
Return a list of output ports that can potentially send data
to this channel.
|
void |
transmit(Token token,
WirelessIOPort port,
RecordToken properties)
Transmit the specified token from the specified port with the
specified properties.
|
void |
unregisterPropertyTransformer(PropertyTransformer transformer,
WirelessIOPort port)
Unregister a property transformer for transmissions from the specified
port (or from null for a generic property transformer).
|
createReceivers, getCausalityInterface, getDirector, getExecutiveDirector, getManager, inputPortList, newReceiver, outputPortListfire, isFireFunctional, isStrict, iterate, postfire, prefire, stop, stopFire, terminateaddInitializable, initialize, preinitialize, removeInitializable, wrapupdescription, getContainer, getDisplayName, getFullName, getName, getName, setNametransformPropertieschannelNotifyvoid addChannelListener(ChannelListener listener)
listener - The channel listener to add.removeChannelListener(ChannelListener)ChannelPort getChannelPort()
java.util.List listeningInputPorts()
throws IllegalActionException
IllegalActionException - If a port is encountered
whose outsideChannel parameter cannot be evaluated.java.util.List listeningOutputPorts()
throws IllegalActionException
IllegalActionException - If a port is encountered
whose insideChannel parameter cannot be evaluated.void registerPropertyTransformer(PropertyTransformer transformer, WirelessIOPort port)
transformer - The property transformer to be registered.port - The port whose transmissions should be subject to the
property transformer, or null to make them subject to all
transmissions through this channel.void removeChannelListener(ChannelListener listener)
listener - The channel listener to remove.addChannelListener(ChannelListener)java.util.List sendingInputPorts()
throws IllegalActionException
IllegalActionException - If a port is encountered
whose insideChannel parameter cannot be evaluated.java.util.List sendingOutputPorts()
throws IllegalActionException
IllegalActionException - If a port is encountered
whose outsideChannel parameter cannot be evaluated.void transmit(Token token, WirelessIOPort port, RecordToken properties) throws IllegalActionException
token - The token to transmit, or null to clear all
receivers that are in range.port - The port from which this is being transmitted.properties - The transmission properties.IllegalActionException - If something goes wrong during
the transmission.void unregisterPropertyTransformer(PropertyTransformer transformer, WirelessIOPort port)
transformer - The property transformer to be unregistered.port - The port whose transmissions should be subject to the
property transformer, or null for a generic transformer.registerPropertyTransformer(PropertyTransformer, WirelessIOPort)