rtpi.packets
Class RtcpiSubcomponentReportPacket

java.lang.Object
  |
  +--rtpi.packets.RtcpiPacket
        |
        +--rtpi.packets.RtcpiSubcomponentReportPacket

public class RtcpiSubcomponentReportPacket
extends RtcpiPacket

This implements the RTCP/I subcomponent report packet.


Field Summary
static int SUBREP
          The payload type for subcomponent report packets.
 
Fields inherited from class rtpi.packets.RtcpiPacket
count, HEADER_SIZE, length, packetData, packetStart, participantID, payloadType, reserved, version, VERSION
 
Constructor Summary
RtcpiSubcomponentReportPacket(byte[] d, int l)
          This creates an RTCP/I subcomponent report packet from a transport packet that has been received.
RtcpiSubcomponentReportPacket(int pid, int applicationLevelNames, java.util.LinkedList subs)
          This creates a new subcomponent report packet that is to be transmitted over the network.
 
Method Summary
 void flush()
          This flushes an outgoing packet.
 int getApplicationLevelNames()
          This returns the application level names flag.
 java.util.LinkedList getSubcomponentReportInfo()
          This returns the list of SubcomponentReportInfo items that are contained in this packet.
 void parse()
          This parses an incoming packet.
 java.lang.String toString()
          Convert this object to a string.
 
Methods inherited from class rtpi.packets.RtcpiPacket
flushHeader, getLength, getPacket, getParticipantID, getPayloadType, inspectLength, inspectPayloadType
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

SUBREP

public static final int SUBREP
The payload type for subcomponent report packets.
Constructor Detail

RtcpiSubcomponentReportPacket

public RtcpiSubcomponentReportPacket(int pid,
                                     int applicationLevelNames,
                                     java.util.LinkedList subs)
                              throws IllegalValueException
This creates a new subcomponent report packet that is to be transmitted over the network.
Parameters:
pid - The id of the participant transmitting the packet.
applicationLevelNames - This must be set to 1 if application level names are used, otherwhise it must be set to 0 if no application level names are used
subs - The list of subcomponent report items. All objects in this list must be of the type SubcomponentReportInfo (package rtpi.packets). If applicationLevelNames is 1 then application level names must be present for each subcomponent. If applicationLevelNames is 0 then no application level names may be given.

RtcpiSubcomponentReportPacket

public RtcpiSubcomponentReportPacket(byte[] d,
                                     int l)
This creates an RTCP/I subcomponent report packet from a transport packet that has been received.
Parameters:
d - The transport packet.
s - The start of the RTCP/I packet in the transport packet (position of the first byte of the RTCP/I header.
Method Detail

flush

public void flush()
           throws RtpiFlushException
This flushes an outgoing packet.
Overrides:
flush in class RtcpiPacket

parse

public void parse()
           throws RtpiParseException
This parses an incoming packet.
Overrides:
parse in class RtcpiPacket

getSubcomponentReportInfo

public java.util.LinkedList getSubcomponentReportInfo()
This returns the list of SubcomponentReportInfo items that are contained in this packet.
Returns:
The list of items.

getApplicationLevelNames

public int getApplicationLevelNames()
This returns the application level names flag.
Returns:
The value of the application level names flag.

toString

public java.lang.String toString()
Convert this object to a string.
Returns:
This object as a string.
Overrides:
toString in class RtcpiPacket