template <typename T>
T PacketBuffer<T>::getNextPacket() throw (std::out_of_range)
{ if (mPackets.empty()) { throw (std::out_of_range("Buffer is empty"));
}
// retrieve the head element
T temp = mPackets.front();
// pop the head element
mPackets.pop();
// return the head element return (temp);
}
class IPPacket {};
int main(int argc, char** argv)
{
PacketBuffer<IPPacket> ipPackets(3);