
Public Member Functions | |
| RequestQueue () | |
| virtual | ~RequestQueue () |
| void | enqueue (RequestRecord *request) |
| RequestRecord * | dequeue () |
| void | putAtHead (RequestRecord *request) |
| RequestRecord * | findByCSeq (unsigned cseq) |
| Boolean | isEmpty () const |
Private Attributes | |
| RequestRecord * | fHead |
| RequestRecord * | fTail |
Definition at line 205 of file RTSPClient.hh.
| RTSPClient::RequestQueue::RequestQueue | ( | ) |
| RTSPClient::RequestQueue::~RequestQueue | ( | ) | [virtual] |
Definition at line 1603 of file RTSPClient.cpp.
References fHead.
01603 { 01604 delete fHead; 01605 }
| void RTSPClient::RequestQueue::enqueue | ( | RequestRecord * | request | ) |
Definition at line 1607 of file RTSPClient.cpp.
References fHead, fTail, RTSPClient::RequestRecord::next(), and NULL.
Referenced by RTSPClient::connectionHandler1(), RTSPClient::responseHandlerForHTTP_GET1(), and RTSPClient::sendRequest().
01607 { 01608 if (fTail == NULL) { 01609 fHead = request; 01610 } else { 01611 fTail->next() = request; 01612 } 01613 fTail = request; 01614 }
| RTSPClient::RequestRecord * RTSPClient::RequestQueue::dequeue | ( | ) |
Definition at line 1616 of file RTSPClient.cpp.
References fHead, fTail, RTSPClient::RequestRecord::next(), and NULL.
Referenced by RTSPClient::connectionHandler1(), RTSPClient::handleResponseBytes(), and RTSPClient::responseHandlerForHTTP_GET1().
01616 { 01617 RequestRecord* request = fHead; 01618 if (fHead == fTail) { 01619 fHead = NULL; 01620 fTail = NULL; 01621 } else { 01622 fHead = fHead->next(); 01623 } 01624 if (request != NULL) request->next() = NULL; 01625 return request; 01626 }
| void RTSPClient::RequestQueue::putAtHead | ( | RequestRecord * | request | ) |
Definition at line 1628 of file RTSPClient.cpp.
References fHead, fTail, RTSPClient::RequestRecord::next(), and NULL.
Referenced by RTSPClient::handleResponseBytes().
01628 { 01629 request->next() = fHead; 01630 fHead = request; 01631 if (fTail == NULL) { 01632 fTail = request; 01633 } 01634 }
| RTSPClient::RequestRecord * RTSPClient::RequestQueue::findByCSeq | ( | unsigned | cseq | ) |
Definition at line 1636 of file RTSPClient.cpp.
References RTSPClient::RequestRecord::cseq(), fHead, RTSPClient::RequestRecord::next(), and NULL.
Referenced by RTSPClient::changeResponseHandler().
01636 { 01637 RequestRecord* request; 01638 for (request = fHead; request != NULL; request = request->next()) { 01639 if (request->cseq() == cseq) return request; 01640 } 01641 return NULL; 01642 }
| Boolean RTSPClient::RequestQueue::isEmpty | ( | ) | const [inline] |
RequestRecord* RTSPClient::RequestQueue::fHead [private] |
Definition at line 217 of file RTSPClient.hh.
Referenced by dequeue(), enqueue(), findByCSeq(), isEmpty(), putAtHead(), and ~RequestQueue().
RequestRecord* RTSPClient::RequestQueue::fTail [private] |
1.5.2