rtpi
Interface RtpiRecipient

All Known Subinterfaces:
LateJoinRecipient
All Known Implementing Classes:
LateJoin

public abstract interface RtpiRecipient

This interface must be implemented by a class the wants to be contacted by Rtpi when thing happen (e.g. ADUs are received, RTCP/I information arrives, etc).


Method Summary
 void activateSubcomponent(Rtpi rtpi, long subcomponentID)
          This method is called when a subcomponent has become active.
 void addSubcomponent(Rtpi rtpi, long subcomponentID, boolean active, byte[] name)
          This method is called when a new subcomponent has been discovered by RTCP/I.
 void changeSourceInfo(Rtpi rtpi, RtpiSourceInfo participant)
          This method is called when the information for a participant has changed.
 void connectionClosed(Rtpi rtpi)
          This method is called if either the reliability service used for RTP/I or the transport service used for RTCP/I has encountered a fatal error.
 void deactivateSubcomponent(Rtpi rtpi, long subcomponentID)
          This method is called when a subcomponent has become passive.
 void receiveDeltaState(Rtpi rtpi, RtpiDeltaState deltaState)
          This method is called to deliver a delta state that has been received.
 void receiveEvent(Rtpi rtpi, RtpiEvent event)
          This method is called to deliver an event that has been received.
 void receiveState(Rtpi rtpi, RtpiState state)
          This method is called to deliver a state that has been received.
 void receiveStateQuery(Rtpi rtpi, RtpiStateQuery stateQuery)
          This method is called to deliver a state query that has been received.
 void removeSource(Rtpi rtpi, RtpiSourceInfo participant)
          This method is called when a participant has timed out or sent a BYE.
 void removeSubcomponent(Rtpi rtpi, long subcomponentID)
          This method is called when a subcomponent has timed out.
 void rtpiAduLost(Rtpi rtpi, int participantID, long subID, int type, int sequenceNumber, int timestamp)
          This method is invoked when the reliability service has detected a lost packet and was not instructed to repair the loss of this packet.
 void rtpiCouldNotRecover(Rtpi rtpi, int participantID, long subID, int type, int sequenceNumber, int timestamp)
          This method is invoked when the reliability service has detected a lost packet and was instructed to repair the loss but was unable to do so.
 

Method Detail

rtpiAduLost

public void rtpiAduLost(Rtpi rtpi,
                        int participantID,
                        long subID,
                        int type,
                        int sequenceNumber,
                        int timestamp)
This method is invoked when the reliability service has detected a lost packet and was not instructed to repair the loss of this packet.
Parameters:
rtpi - The Rtpi instance that generated this message. This is usefull if multiple Rtpi instances are used by a single application.
participantID - The ID of the sender of the lost ADU.
subID - The ID of the affected subcomponent.
type - The type (STATE, EVENT, etc.) of the lost ADU.
sequenceNumber - The sequence number of the lost ADU.
timestamp - A timestamp that is greater or equal to the timestamp of the lost ADU.

rtpiCouldNotRecover

public void rtpiCouldNotRecover(Rtpi rtpi,
                                int participantID,
                                long subID,
                                int type,
                                int sequenceNumber,
                                int timestamp)
This method is invoked when the reliability service has detected a lost packet and was instructed to repair the loss but was unable to do so.
Parameters:
rtpi - The Rtpi instance that generated this message. This is usefull if multiple Rtpi instances are used by a single application.
participantID - The ID of the sender of the lost ADU.
subID - The ID of the affected subcomponent.
type - The type (STATE, EVENT, etc.) of the lost ADU.
sequenceNumber - The sequence number of the lost ADU.
timestamp - A timestamp that is greater or equal to the timestamp of the lost ADU.

connectionClosed

public void connectionClosed(Rtpi rtpi)
This method is called if either the reliability service used for RTP/I or the transport service used for RTCP/I has encountered a fatal error.
Parameters:
rtpi - The Rtpi instance that generated this message. This is usefull if multiple Rtpi instances are used by a single application.

receiveEvent

public void receiveEvent(Rtpi rtpi,
                         RtpiEvent event)
This method is called to deliver an event that has been received.
Parameters:
rtpi - The Rtpi instance that generated this message. This is usefull if multiple Rtpi instances are used by a single application.
event - The event.

receiveState

public void receiveState(Rtpi rtpi,
                         RtpiState state)
This method is called to deliver a state that has been received.
Parameters:
rtpi - The Rtpi instance that generated this message. This is usefull if multiple Rtpi instances are used by a single application.
state - The state.

receiveDeltaState

public void receiveDeltaState(Rtpi rtpi,
                              RtpiDeltaState deltaState)
This method is called to deliver a delta state that has been received.
Parameters:
rtpi - The Rtpi instance that generated this message. This is usefull if multiple Rtpi instances are used by a single application.
dletaState - The delta event.

receiveStateQuery

public void receiveStateQuery(Rtpi rtpi,
                              RtpiStateQuery stateQuery)
This method is called to deliver a state query that has been received.
Parameters:
rtpi - The Rtpi instance that generated this message. This is usefull if multiple Rtpi instances are used by a single application.
stateQuery - The state query.

changeSourceInfo

public void changeSourceInfo(Rtpi rtpi,
                             RtpiSourceInfo participant)
This method is called when the information for a participant has changed.
Parameters:
rtpi - The Rtpi instance that generated this message. This is usefull if multiple Rtpi instances are used by a single application.
participant - The new participant information.

removeSource

public void removeSource(Rtpi rtpi,
                         RtpiSourceInfo participant)
This method is called when a participant has timed out or sent a BYE.
Parameters:
rtpi - The Rtpi instance that generated this message. This is usefull if multiple Rtpi instances are used by a single application.
participant - The participant information about the removed participant.

addSubcomponent

public void addSubcomponent(Rtpi rtpi,
                            long subcomponentID,
                            boolean active,
                            byte[] name)
This method is called when a new subcomponent has been discovered by RTCP/I. If the subcomponent has been added by the local application to the list of those subcomponents that it is interested in (by using Rtpi.addSubcomponent) and has then removed the subcomponent from that list (using Rtpi.removeSubcomponent) then this method MAY be called if some other application still announces the subcomponent. If this is important to the application, then it should remember the subcomponents it has seen so far and ignore this message if the subcomponent has already been seen.
Parameters:
rtpi - The Rtpi instance that generated this message. This is usefull if multiple Rtpi instances are used by a single application.
subcomponentID - The ID of the subcomponent.
active - True if the subcomponent is active.
name - The name of the subcomponent.

removeSubcomponent

public void removeSubcomponent(Rtpi rtpi,
                               long subcomponentID)
This method is called when a subcomponent has timed out. This can only happen when the local application has not added the subcomponent via Rtpi.addSubcomponent.
Parameters:
rtpi - The Rtpi instance that generated this message. This is usefull if multiple Rtpi instances are used by a single application.
subcomponentID - The ID of the subcomponent.

activateSubcomponent

public void activateSubcomponent(Rtpi rtpi,
                                 long subcomponentID)
This method is called when a subcomponent has become active. This is only called when the subcomponent has not been declared as active by the local application.
Parameters:
rtpi - The Rtpi instance that generated this message. This is usefull if multiple Rtpi instances are used by a single application.
subcomponentID - The ID of the subcomponent.

deactivateSubcomponent

public void deactivateSubcomponent(Rtpi rtpi,
                                   long subcomponentID)
This method is called when a subcomponent has become passive.
Parameters:
rtpi - The Rtpi instance that generated this message. This is usefull if multiple Rtpi instances are used by a single application.
subcomponentID - The ID of the subcomponent.