# Ogre::StaticCache< cacheSize > Class Template Reference
[Resources]

Template version of cache based on static array. More...

`#include <OgreZip.h>`

List of all members.

## Public Member Functions

| StaticCache ()
| Constructor.
size_t | cacheData (const void *buf, size_t count)
| Cache data pointed by 'buf'.
size_t | read (void *buf, size_t count)
| Read data from cache to 'buf' (maximum 'count' bytes).
bool | rewind (size_t count)
| Step back in cached stream by 'count' bytes.
bool | ff (size_t count)
| Step forward in cached stream by 'count' bytes.
size_t | avail () const
| Returns number of bytes available for reading in cache after rewinding.
void | clear ()
| Clear the cache.

## Protected Attributes

char | mBuffer [cacheSize]
| Static buffer.
size_t | mValidBytes
| Number of bytes valid in cache (written from the beginning of static buffer).
size_t | mPos
| Current read position.

## Detailed Description

### template<size_t cacheSize>
class Ogre::StaticCache< cacheSize >

Template version of cache based on static array.

'cacheSize' defines size of cache in bytes.

Definition at line 125 of file OgreZip.h.

## Constructor & Destructor Documentation

template<size_t cacheSize>

Ogre::StaticCache< cacheSize >::StaticCache | ( |  | ) |

Constructor.

Definition at line 138 of file OgreZip.h.

## Member Function Documentation

template<size_t cacheSize>

size_t Ogre::StaticCache< cacheSize >::avail | ( |  | ) | const

Returns number of bytes available for reading in cache after rewinding.

Definition at line 219 of file OgreZip.h.

Referenced by Ogre::StaticCache< 2 *OGRE_STREAM_TEMP_SIZE >::cacheData(), Ogre::StaticCache< 2 *OGRE_STREAM_TEMP_SIZE >::ff(), and Ogre::StaticCache< 2 *OGRE_STREAM_TEMP_SIZE >::read().

template<size_t cacheSize>

size_t Ogre::StaticCache< cacheSize >::cacheData | ( | const void * | buf,
|  | size_t | count |
| ) |  |  |

Cache data pointed by 'buf'.

If 'count' is greater than cache size, we cache only last bytes. Returns number of bytes written to cache.

Definition at line 146 of file OgreZip.h.

template<size_t cacheSize>

void Ogre::StaticCache< cacheSize >::clear | ( | void |  | ) |

Clear the cache.

Definition at line 225 of file OgreZip.h.

Referenced by Ogre::StaticCache< 2 *OGRE_STREAM_TEMP_SIZE >::ff(), and Ogre::StaticCache< 2 *OGRE_STREAM_TEMP_SIZE >::rewind().

template<size_t cacheSize>

bool Ogre::StaticCache< cacheSize >::ff | ( | size_t | count | ) |

Step forward in cached stream by 'count' bytes.

Returns 'true' if cache contains resulting position.

Definition at line 204 of file OgreZip.h.

template<size_t cacheSize>

size_t Ogre::StaticCache< cacheSize >::read | ( | void * | buf,
|  | size_t | count |
| ) |  |  |

Read data from cache to 'buf' (maximum 'count' bytes).

Returns number of bytes read from cache.

Definition at line 180 of file OgreZip.h.

template<size_t cacheSize>

bool Ogre::StaticCache< cacheSize >::rewind | ( | size_t | count | ) |

Step back in cached stream by 'count' bytes.

Returns 'true' if cache contains resulting position.

Definition at line 190 of file OgreZip.h.

## Member Data Documentation

template<size_t cacheSize>

char Ogre::StaticCache< cacheSize >::mBuffer[cacheSize]`[protected]`

Static buffer.

Definition at line 129 of file OgreZip.h.

Referenced by Ogre::StaticCache< 2 *OGRE_STREAM_TEMP_SIZE >::cacheData(), and Ogre::StaticCache< 2 *OGRE_STREAM_TEMP_SIZE >::read().

template<size_t cacheSize>

size_t Ogre::StaticCache< cacheSize >::mPos `[protected]`

Current read position.

Definition at line 134 of file OgreZip.h.

Referenced by Ogre::StaticCache< 2 *OGRE_STREAM_TEMP_SIZE >::avail(), Ogre::StaticCache< 2 *OGRE_STREAM_TEMP_SIZE >::cacheData(), Ogre::StaticCache< 2 *OGRE_STREAM_TEMP_SIZE >::clear(), Ogre::StaticCache< 2 *OGRE_STREAM_TEMP_SIZE >::ff(), Ogre::StaticCache< 2 *OGRE_STREAM_TEMP_SIZE >::read(), Ogre::StaticCache< 2 *OGRE_STREAM_TEMP_SIZE >::rewind(), and Ogre::StaticCache< 2 *OGRE_STREAM_TEMP_SIZE >::StaticCache().

template<size_t cacheSize>

size_t Ogre::StaticCache< cacheSize >::mValidBytes `[protected]`

Number of bytes valid in cache (written from the beginning of static buffer).

Definition at line 132 of file OgreZip.h.

Referenced by Ogre::StaticCache< 2 *OGRE_STREAM_TEMP_SIZE >::avail(), Ogre::StaticCache< 2 *OGRE_STREAM_TEMP_SIZE >::cacheData(), Ogre::StaticCache< 2 *OGRE_STREAM_TEMP_SIZE >::clear(), and Ogre::StaticCache< 2 *OGRE_STREAM_TEMP_SIZE >::StaticCache().

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

- OgreZip.h

Copyright © 2008 Torus Knot Software Ltd
This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.
Last modified Wed Nov 3 2010 19:25:03