OGRE: Ogre::ArchiveFactory Class Reference - OGRE Documentation

# Ogre::ArchiveFactory Class Reference

Abstract factory class, archive codec plugins can register concrete subclasses of this. More...

`#include <OgreArchiveFactory.h>`

Inheritance diagram for Ogre::ArchiveFactory:

[legend]

List of all members.

## Public Member Functions
virtual | ~ArchiveFactory ()
virtual const String & | getType () const =0
| Returns the factory type.
virtual T * | createInstance (const String &name)=0
| Creates a new object.
virtual void | destroyInstance (T *)=0
| Destroys an object which was created by this factory.
void * | operator new (size_t sz, const char *file, int line, const char *func)
| operator new, with debug line info
void * | operator new (size_t sz)
void * | operator new (size_t sz, void *ptr)
| placement operator new
void * | operator new[] (size_t sz, const char *file, int line, const char *func)
| array operator new, with debug line info
void * | operator new[] (size_t sz)
void | operator delete (void *ptr)
void | operator delete (void *ptr, void *)
void | operator delete (void *ptr, const char *, int, const char *)
void | operator delete[] (void *ptr)
void | operator delete[] (void *ptr, const char *, int, const char *)

## Detailed Description

Abstract factory class, archive codec plugins can register concrete subclasses of this.

Remarks:
  All access to 'archives' (collections of files, compressed or just folders, maybe even remote) is managed via the abstract Archive class. Plugins are expected to provide the implementation for the actual codec itself, but because a subclass of Archive has to be created for every archive, a factory class is required to create the appropriate subclass.

  So archive plugins create a subclass of Archive AND a subclass of ArchiveFactory which creates instances of the Archive subclass. See the 'Zip' and 'FileSystem' plugins for examples. Each Archive and ArchiveFactory subclass pair deal with a single archive type (identified by a string).

Definition at line 54 of file OgreArchiveFactory.h.

## Constructor & Destructor Documentation

virtual Ogre::ArchiveFactory::~ArchiveFactory | ( |  | ) | `[virtual]`

Definition at line 57 of file OgreArchiveFactory.h.

## Member Function Documentation

template<typename T>

virtual const String& Ogre::FactoryObj< T >::getType | ( |  | ) | const`[pure virtual, inherited]`

Returns the factory type.

Returns:
  The factory type.

Implemented in Ogre::BillboardParticleRendererFactory, Ogre::FileSystemArchiveFactory, and Ogre::ZipArchiveFactory.

template<typename T>

virtual T* Ogre::FactoryObj< T >::createInstance | ( | const String & | name | ) | `[pure virtual, inherited]`

Creates a new object.

Parameters:

  | name | Name of the object to create

Returns:
  An object created by the factory. The type of the object depends on the factory.

Implemented in Ogre::BillboardParticleRendererFactory, Ogre::FileSystemArchiveFactory, and Ogre::ZipArchiveFactory.

template<typename T>

virtual void Ogre::FactoryObj< T >::destroyInstance | ( | T * |  | ) | `[pure virtual, inherited]`

Destroys an object which was created by this factory.

Parameters:

  | ptr | Pointer to the object to destroy

template<class Alloc>

void* Ogre::AllocatedObject< Alloc >::operator new | ( | size_t | sz,
|  | const char * | file,
|  | int | line,
|  | const char * | func |
| ) |  |  | `[inherited]`

operator new, with debug line info

Definition at line 62 of file OgreMemoryAllocatedObject.h.

template<class Alloc>

void* Ogre::AllocatedObject< Alloc >::operator new | ( | size_t | sz | ) | `[inherited]`

Definition at line 67 of file OgreMemoryAllocatedObject.h.

template<class Alloc>

void* Ogre::AllocatedObject< Alloc >::operator new | ( | size_t | sz,
|  | void * | ptr |
| ) |  |  | `[inherited]`

placement operator new

Definition at line 73 of file OgreMemoryAllocatedObject.h.

template<class Alloc>

void* Ogre::AllocatedObject< Alloc >::operator new[] | ( | size_t | sz,
|  | const char * | file,
|  | int | line,
|  | const char * | func |
| ) |  |  | `[inherited]`

array operator new, with debug line info

Definition at line 79 of file OgreMemoryAllocatedObject.h.

template<class Alloc>

void* Ogre::AllocatedObject< Alloc >::operator new[] | ( | size_t | sz | ) | `[inherited]`

Definition at line 84 of file OgreMemoryAllocatedObject.h.

template<class Alloc>

void Ogre::AllocatedObject< Alloc >::operator delete | ( | void * | ptr | ) | `[inherited]`

Definition at line 89 of file OgreMemoryAllocatedObject.h.

template<class Alloc>

void Ogre::AllocatedObject< Alloc >::operator delete | ( | void * | ptr,
|  | void * |  |
| ) |  |  | `[inherited]`

Definition at line 95 of file OgreMemoryAllocatedObject.h.

template<class Alloc>

void Ogre::AllocatedObject< Alloc >::operator delete | ( | void * | ptr,
|  | const char * | ,
|  | int | ,
|  | const char * |  |
| ) |  |  | `[inherited]`

Definition at line 101 of file OgreMemoryAllocatedObject.h.

template<class Alloc>

void Ogre::AllocatedObject< Alloc >::operator delete[] | ( | void * | ptr | ) | `[inherited]`

Definition at line 106 of file OgreMemoryAllocatedObject.h.

template<class Alloc>

void Ogre::AllocatedObject< Alloc >::operator delete[] | ( | void * | ptr,
|  | const char * | ,
|  | int | ,
|  | const char * |  |
| ) |  |  | `[inherited]`

Definition at line 112 of file OgreMemoryAllocatedObject.h.

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

- OgreArchiveFactory.h

Copyright © 2008 Torus Knot Software Ltd
This work is licensed under a Creative Commons Attribution-ShareAlike 2.5 License.
Last modified Sun Jul 26 11:32:45 2009