jist.swans.radio
Class RadioInfo

java.lang.Object
  extended by jist.swans.radio.RadioInfo
All Implemented Interfaces:
JistAPI.Timeless

public class RadioInfo
extends java.lang.Object
implements JistAPI.Timeless

Radio properties.

Since:
SWANS1.0
Version:
$Id: RadioInfo.java,v 1.18 2004/04/06 16:07:50 barr Exp $
Author:
Rimon Barr <barr+jist@cs.cornell.edu>

Nested Class Summary
static class RadioInfo.RadioInfoShared
          Timeless information possibly shared among numerous Radio instances (only to save simulation memory.
static class RadioInfo.RadioInfoUnique
          Timeless information unique to a single Radio instance.
 
Field Summary
protected  RadioInfo.RadioInfoShared shared
          Timeless information possibly shared among numerous Radio instances (only to save simulation memory).
protected  RadioInfo.RadioInfoUnique unique
          Timeless information unique to this Radio instance.
 
Constructor Summary
RadioInfo(RadioInfo.RadioInfoUnique unique, RadioInfo.RadioInfoShared shared)
          Create radio information object with shared and unique properties.
 
Method Summary
static RadioInfo.RadioInfoShared createShared(double frequency, int bandwidth, double transmit, double gain, double sensitivity_mW, double threshold_mW, double temperature, double thermalFactor, double ambientNoise_mW)
          Create shared radio parameters.
 RadioInfo.RadioInfoShared getShared()
          Return shared radio properties.
 RadioInfo.RadioInfoUnique getUnique()
          Return unique radio properties.
 java.lang.String toString()
          
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

unique

protected RadioInfo.RadioInfoUnique unique
Timeless information unique to this Radio instance.


shared

protected RadioInfo.RadioInfoShared shared
Timeless information possibly shared among numerous Radio instances (only to save simulation memory).

Constructor Detail

RadioInfo

public RadioInfo(RadioInfo.RadioInfoUnique unique,
                 RadioInfo.RadioInfoShared shared)
Create radio information object with shared and unique properties.

Parameters:
unique - unique radio properties
shared - shared radio properties (shared only to save some memory)
Method Detail

getUnique

public RadioInfo.RadioInfoUnique getUnique()
Return unique radio properties.

Returns:
unique radio properties

getShared

public RadioInfo.RadioInfoShared getShared()
Return shared radio properties.

Returns:
shared radio properties

toString

public java.lang.String toString()

Overrides:
toString in class java.lang.Object

createShared

public static RadioInfo.RadioInfoShared createShared(double frequency,
                                                     int bandwidth,
                                                     double transmit,
                                                     double gain,
                                                     double sensitivity_mW,
                                                     double threshold_mW,
                                                     double temperature,
                                                     double thermalFactor,
                                                     double ambientNoise_mW)
Create shared radio parameters.

Parameters:
frequency - radio frequency (units: Hertz)
bandwidth - bandwidth (units: bits/second)
transmit - transmission power (units: dBm)
gain - antenna gain (units: dB)
sensitivity_mW - receive sensivity (units: mW)
threshold_mW - receive threshold (units: mW)
temperature - field temperature (units: degrees Kelvin)
thermalFactor - thermal noise
ambientNoise_mW - ambient noise (units: mW)
Returns:
shared radio information object