INET Framework for OMNeT++/OMNEST
SCTPSendStream Class Reference

#include <SCTPSendStream.h>

List of all members.

Public Member Functions

 SCTPSendStream (const uint16 id)
 ~SCTPSendStream ()
cQueue * getStreamQ () const
cQueue * getUnorderedStreamQ () const
uint32 getNextStreamSeqNum () const
void setNextStreamSeqNum (const uint16 num)
uint16 getStreamId () const
void setStreamId (const uint16 id)
void deleteQueue ()

Protected Attributes

uint16 streamId
uint16 nextStreamSeqNum
cQueue * streamQ
cQueue * uStreamQ
int32 ssn

Constructor & Destructor Documentation

SCTPSendStream::SCTPSendStream ( const uint16  id)
{
    streamId              = id;
    nextStreamSeqNum = 0;

    char queueName[64];
    snprintf(queueName, sizeof(queueName), "OrderedSendQueue ID %d", id);
    streamQ = new cQueue(queueName);
    snprintf(queueName, sizeof(queueName), "UnorderedSendQueue ID %d", id);
    uStreamQ = new cQueue(queueName);
}
SCTPSendStream::~SCTPSendStream ( )
{
    deleteQueue();
}

Member Function Documentation

void SCTPSendStream::deleteQueue ( )

Referenced by ~SCTPSendStream().

{
    SCTPDataMsg*         datMsg;
    SCTPSimpleMessage* smsg;
    int32                    count = streamQ->length();
    while (!streamQ->empty()) {
        datMsg = check_and_cast<SCTPDataMsg*>(streamQ->pop());
        smsg     = check_and_cast<SCTPSimpleMessage*>(datMsg->decapsulate());
        delete smsg;
        delete datMsg;
        count--;
    }
    while (!uStreamQ->empty()) {
        datMsg = check_and_cast<SCTPDataMsg*>(uStreamQ->pop());
        smsg     = check_and_cast<SCTPSimpleMessage*>(datMsg->decapsulate());
        delete smsg;
        delete datMsg;
    }
    delete streamQ;
    delete uStreamQ;
}
uint32 SCTPSendStream::getNextStreamSeqNum ( ) const [inline]
uint16 SCTPSendStream::getStreamId ( ) const [inline]
{ return streamId; };
void SCTPSendStream::setNextStreamSeqNum ( const uint16  num) [inline]
void SCTPSendStream::setStreamId ( const uint16  id) [inline]

Referenced by SCTPAssociation::initStreams().

{ streamId = id; };

Member Data Documentation

Referenced by SCTPSendStream().

int32 SCTPSendStream::ssn [protected]
uint16 SCTPSendStream::streamId [protected]

Referenced by SCTPSendStream().

cQueue* SCTPSendStream::streamQ [protected]

Referenced by deleteQueue(), and SCTPSendStream().

cQueue* SCTPSendStream::uStreamQ [protected]

Referenced by deleteQueue(), and SCTPSendStream().


The documentation for this class was generated from the following files: