# IAX2FrameList Class Reference

`#include <frame.h>`

Inheritance diagram for IAX2FrameList:

List of all members.

## Public Member Functions

| ~IAX2FrameList ()
void | ReportList (PString &answer)
IAX2Frame * | GetLastFrame ()
void | Initialise ()
PBoolean | Empty ()
void | GrabContents (IAX2FrameList &src)
void | DeleteMatchingSendFrame (IAX2FullFrame *reply)
void | SendVnakRequestedFrames (IAX2FullFrameProtocol &src)
void | AddNewFrame (IAX2Frame *src)
void | GetResendFramesDeleteOldFrames (IAX2FrameList &framesToSend)
virtual PINDEX | GetSize ()
void | MarkAllAsResent ()

## Protected Member Functions

virtual PINDEX | GetEntries ()

## Protected Attributes

PMutex | mutex

## Detailed Description

A list of all frames waiting for processing

Note please, this class is thread safe.

You do not need to protect acces to this class.

## Constructor & Destructor Documentation

IAX2FrameList::~IAX2FrameList | ( |  | ) |

## Member Function Documentation

void IAX2FrameList::ReportList | ( | PString & | answer | ) |

Report the frames queued in this list

IAX2Frame* IAX2FrameList::GetLastFrame | ( |  | ) |

Get pointer to last frame in the list. Remove this frame from the list

void IAX2FrameList::Initialise | ( |  | ) |

Removing item from list will not automatically delete it

PBoolean IAX2FrameList::Empty | ( |  | ) | `[inline]`

True if this frame list is empty

void IAX2FrameList::GrabContents | ( | IAX2FrameList & | src | ) |

Copy to this frame the contents of the frameList pointed to by src

void IAX2FrameList::DeleteMatchingSendFrame | ( | IAX2FullFrame * | reply | ) |

Delete the frame that has been sent, which is waiting for this reply. The reply is the argument.

void IAX2FrameList::SendVnakRequestedFrames | ( | IAX2FullFrameProtocol & | src | ) |

A Vnak frame has been received (voice not acknowledged) which actually means, retransmit all those frames you have on this particular call number from the oseqno specified in the supplied frame

void IAX2FrameList::AddNewFrame | ( | IAX2Frame * | src | ) |

Add the frame (supplied as an argument) to the end of this list

void IAX2FrameList::GetResendFramesDeleteOldFrames | ( | IAX2FrameList & | framesToSend | ) |

Get a list of frames to send, and delete the timed out frames

virtual PINDEX IAX2FrameList::GetSize | ( |  | ) | `[inline, virtual]`

Thread safe read of the number of elements on this list.

void IAX2FrameList::MarkAllAsResent | ( |  | ) |

Mark every frame on this list as having been resent

virtual PINDEX IAX2FrameList::GetEntries | ( |  | ) | `[inline, protected, virtual]`

NON Thread safe read of the number of elements on this list.

## Member Data Documentation

PMutex IAX2FrameList::mutex `[protected]`

Local variable which protects access.

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

- frame.h