# BasicDataStructures::Queue< queue_type > Class Template Reference

`#include <Queue.h>`

List of all members.

## Public Member Functions

| Queue ()
| ~Queue ()
| Queue (Queue &original_copy)
bool | operator= (const Queue &original_copy)
void | push (const queue_type &input)
void | pushAtHead (const queue_type &input)
queue_type & | operator[] (unsigned long position)
void | del (unsigned long position)
const queue_type | peek (void) const
const queue_type | pop (void)
const unsigned long | size (void) const
void | clear (void)
void | compress (void)
bool | find (queue_type q)
void | clearAndForceAllocation (int size)

## Private Attributes

queue_type * | array
unsigned long | head
unsigned long | tail
unsigned long | allocation_size

### template<class queue_type>
class BasicDataStructures::Queue< queue_type >

## Constructor & Destructor Documentation

template<class queue_type>
BasicDataStructures::Queue< queue_type >::Queue | ( |  | ) |

template<class queue_type>
BasicDataStructures::Queue< queue_type >::~Queue | ( |  | ) |

template<class queue_type>
BasicDataStructures::Queue< queue_type >::Queue | ( | Queue< queue_type > & | original_copy | ) |

## Member Function Documentation

template<class queue_type>
void BasicDataStructures::Queue< queue_type >::clear | ( | void |  | ) | `[inline]`

template<class queue_type>
void BasicDataStructures::Queue< queue_type >::clearAndForceAllocation | ( | int | size | ) |

template<class queue_type>
void BasicDataStructures::Queue< queue_type >::compress | ( | void |  | ) |

template<class queue_type>
void BasicDataStructures::Queue< queue_type >::del | ( | unsigned long | position | ) |

template<class queue_type>
bool BasicDataStructures::Queue< queue_type >::find | ( | queue_type | q | ) |

template<class queue_type>
bool BasicDataStructures::Queue< queue_type >::operator= | ( | const Queue< queue_type > & | original_copy | ) |

template<class queue_type>
queue_type & BasicDataStructures::Queue< queue_type >::operator[] | ( | unsigned long | position | ) | `[inline]`

template<class queue_type>
const queue_type BasicDataStructures::Queue< queue_type >::peek | ( | void |  | ) | const`[inline]`

template<class queue_type>
const queue_type BasicDataStructures::Queue< queue_type >::pop | ( | void |  | ) | `[inline]`

template<class queue_type>
void BasicDataStructures::Queue< queue_type >::push | ( | const queue_type & | input | ) |

template<class queue_type>
void BasicDataStructures::Queue< queue_type >::pushAtHead | ( | const queue_type & | input | ) |

template<class queue_type>
const unsigned long BasicDataStructures::Queue< queue_type >::size | ( | void |  | ) | const`[inline]`

## Member Data Documentation

template<class queue_type>
unsigned long BasicDataStructures::Queue< queue_type >::allocation_size `[private]`

template<class queue_type>
queue_type* BasicDataStructures::Queue< queue_type >::array `[private]`

template<class queue_type>
unsigned long BasicDataStructures::Queue< queue_type >::head `[private]`

template<class queue_type>
unsigned long BasicDataStructures::Queue< queue_type >::tail `[private]`

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

- Projects/raknet/include/raknet/Queue.h