jist.swans.mac
Class MacMessage.Data

java.lang.Object
  extended by jist.swans.mac.MacMessage
      extended by jist.swans.mac.MacMessage.Data
All Implemented Interfaces:
JistAPI.Timeless, Message
Enclosing class:
MacMessage

public static class MacMessage.Data
extends MacMessage

An 802_11 Data packet.

Since:
SWANS1.0

Nested Class Summary
 
Nested classes/interfaces inherited from class jist.swans.mac.MacMessage
MacMessage.Ack, MacMessage.Cts, MacMessage.Data, MacMessage.Rts
 
Field Summary
static short HEADER_SIZE
          Packet header size.
static short MAX_SEQ
          Packet sequence number limit.
 
Fields inherited from class jist.swans.mac.MacMessage
TYPE_ACK, TYPE_CTS, TYPE_DATA, TYPE_RTS
 
Fields inherited from interface jist.swans.misc.Message
NULL
 
Constructor Summary
MacMessage.Data(MacAddress dst, MacAddress src, int duration, Message body)
          Create 802_11 data packet.
MacMessage.Data(MacAddress dst, MacAddress src, int duration, short seq, short frag, boolean moreFrag, boolean retry, Message body)
          Create 802_11 data packet.
 
Method Summary
 Message getBody()
          Return packet data payload.
 void getBytes(byte[] msg, int offset)
          Store packet into byte array.
 MacAddress getDst()
          Return packet destination address.
 int getDuration()
          Return packet transmission time.
 short getFrag()
          Return packet fragment number.
 short getSeq()
          Return packet sequence number.
 int getSize()
          Return packet size or Constants.ZERO_WIRE_SIZE.
 MacAddress getSrc()
          Return packet source address.
 
Methods inherited from class jist.swans.mac.MacMessage
getRetry, getType
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

HEADER_SIZE

public static final short HEADER_SIZE
Packet header size.

See Also:
Constant Field Values

MAX_SEQ

public static final short MAX_SEQ
Packet sequence number limit.

See Also:
Constant Field Values
Constructor Detail

MacMessage.Data

public MacMessage.Data(MacAddress dst,
                       MacAddress src,
                       int duration,
                       short seq,
                       short frag,
                       boolean moreFrag,
                       boolean retry,
                       Message body)
Create 802_11 data packet.

Parameters:
dst - packet destination address
src - packet source address
duration - packet transmission duration
seq - packet sequence number
frag - packet fragment number
moreFrag - packet moreFrag flag
retry - packet retry bit
body - packet data payload

MacMessage.Data

public MacMessage.Data(MacAddress dst,
                       MacAddress src,
                       int duration,
                       Message body)
Create 802_11 data packet.

Parameters:
dst - packet destination address
src - packet source address
duration - packet transmission duration
body - packet data payload
Method Detail

getDst

public MacAddress getDst()
Return packet destination address.

Specified by:
getDst in class MacMessage
Returns:
packet destination address

getSrc

public MacAddress getSrc()
Return packet source address.

Returns:
packet source address

getDuration

public int getDuration()
Return packet transmission time.

Specified by:
getDuration in class MacMessage
Returns:
packet transmission time

getSeq

public short getSeq()
Return packet sequence number.

Returns:
packet sequence number

getFrag

public short getFrag()
Return packet fragment number.

Returns:
packet fragment number

getBody

public Message getBody()
Return packet data payload.

Returns:
packet data payload

getSize

public int getSize()
Return packet size or Constants.ZERO_WIRE_SIZE.

Returns:
packet size [in bytes]

getBytes

public void getBytes(byte[] msg,
                     int offset)
Store packet into byte array.

Parameters:
msg - destination byte array
offset - byte array starting offset