| OGRE 1.11.1 Object-Oriented Graphics Rendering Engine

Classes | Typedefs | Enumerations
Resources
Core

## Classes
class | Ogre::APKFileSystemArchiveFactory
class | Ogre::Archive
| Archive-handling class. More...
class | Ogre::ArchiveFactory
| Abstract factory class, archive codec plugins can register concrete subclasses of this. More...
class | Ogre::ArchiveManager
| This class manages the available ArchiveFactory plugins. More...
struct | Ogre::BackgroundProcessResult
| Encapsulates the result of a background queue request. More...
class | Ogre::DataStream
| General purpose class used for encapsulating the reading and writing of data. More...
class | Ogre::EmbeddedZipArchiveFactory
| Specialisation of ZipArchiveFactory for embedded Zip files. More...
class | Ogre::FileHandleDataStream
| Common subclass of DataStream for handling data from C-style file handles. More...
struct | Ogre::FileInfo
| Information about a file/directory within the archive will be returned using a FileInfo struct. More...
class | Ogre::FileStreamDataStream
| Common subclass of DataStream for handling data from std::basic_istream. More...
class | Ogre::FileSystemArchiveFactory
| Specialisation of the ArchiveFactory to allow reading of files from filesystem folders / directories. More...
class | Ogre::GpuProgram
| Defines a program which runs on the GPU such as a vertex or fragment program. More...
class | Ogre::GpuProgramManager
class | Ogre::HighLevelGpuProgram
| Abstract base class representing a high-level program (a vertex or fragment program). More...
class | Ogre::HighLevelGpuProgramFactory
| Interface definition for factories of HighLevelGpuProgram. More...
class | Ogre::HighLevelGpuProgramManager
| This ResourceManager manages high-level vertex and fragment programs. More...
class | Ogre::ManualResourceLoader
| Interface describing a manual resource loader. More...
class | Ogre::MemoryDataStream
| Common subclass of DataStream for handling data from chunks of memory. More...
class | Ogre::Mesh
| Resource holding data about 3D mesh. More...
struct | Ogre::MeshLodUsage
| A way of recording the way each LODs is recorded this Mesh. More...
class | Ogre::MeshManager
| Handles the management of mesh resources. More...
class | Ogre::MeshSerializer
| Class for serialising mesh data to/from an OGRE .mesh file. More...
class | Ogre::MeshSerializerListener
| More...
class | Ogre::PrefabFactory
| A factory class that can create various mesh prefabs. More...
class | Ogre::Resource
| Abstract class representing a loadable resource (e.g. More...
class | Ogre::ResourceBackgroundQueue
| This class is used to perform Resource operations in a background thread. More...
class | Ogre::ResourceGroupListener
| This class defines an interface which is called back during resource group loading to indicate the progress of the load. More...
class | Ogre::ResourceGroupManager
| This singleton class manages the list of resource groups, and notifying the various resource managers of their obligations to load / unload resources in a group. More...
class | Ogre::ResourceLoadingListener
| More...
class | Ogre::ResourceManager
| Defines a generic resource handler. More...
class | Ogre::SceneLoaderManager
| This class defines an interface for registering and using SceneLoaders. More...
class | Ogre::StreamSerialiser
| Utility class providing helper methods for reading / writing structured data held in a DataStream. More...
class | Ogre::SubMesh
| Defines a part of a complete mesh. More...
class | Ogre::Texture
| Abstract class representing a Texture resource. More...
class | Ogre::TextureManager
| Class for loading & managing textures. More...
class | Ogre::UnifiedHighLevelGpuProgram
| Specialisation of HighLevelGpuProgram which just delegates its implementation to one other high level program, allowing a single program definition to represent one supported program from a number of options. More...
class | Ogre::UnifiedHighLevelGpuProgramFactory
| Factory class for Unified programs. More...
class | Ogre::ZipArchiveFactory
| Specialisation to allow reading of files from a zip format source archive. More...

## Typedefs
typedef WorkQueue::RequestID | Ogre::BackgroundProcessTicket
| Identifier of a background process. More...
typedef std::list< DataStreamPtr > | Ogre::DataStreamList
| List of DataStream items. More...
typedef std::vector< FileInfo > | Ogre::FileInfoList
typedef SharedPtr< FileInfoList > | Ogre::FileInfoListPtr

## Enumerations
enum | { Ogre::GPT_COUNT = GPT_COMPUTE_PROGRAM + 1 }
enum | Ogre::GpuProgramType { Ogre::GPT_VERTEX_PROGRAM = 0, Ogre::GPT_FRAGMENT_PROGRAM, Ogre::GPT_GEOMETRY_PROGRAM, Ogre::GPT_DOMAIN_PROGRAM, Ogre::GPT_HULL_PROGRAM, Ogre::GPT_COMPUTE_PROGRAM }
| Enumerates the types of programs which can run on the GPU. More...
enum | Ogre::MeshChunkID { Ogre::M_HEADER = 0x1000, Ogre::M_MESH = 0x3000, Ogre::M_SUBMESH = 0x4000, Ogre::M_SUBMESH_OPERATION = 0x4010, Ogre::M_SUBMESH_BONE_ASSIGNMENT = 0x4100, Ogre::M_SUBMESH_TEXTURE_ALIAS = 0x4200, Ogre::M_GEOMETRY = 0x5000, Ogre::M_GEOMETRY_VERTEX_DECLARATION = 0x5100, Ogre::M_GEOMETRY_VERTEX_ELEMENT = 0x5110, Ogre::M_GEOMETRY_VERTEX_BUFFER = 0x5200, Ogre::M_GEOMETRY_VERTEX_BUFFER_DATA = 0x5210, Ogre::M_MESH_SKELETON_LINK = 0x6000, Ogre::M_MESH_BONE_ASSIGNMENT = 0x7000, Ogre::M_MESH_LOD_LEVEL = 0x8000, Ogre::M_MESH_LOD_USAGE = 0x8100, Ogre::M_MESH_LOD_MANUAL = 0x8110, Ogre::M_MESH_LOD_GENERATED = 0x8120, Ogre::M_MESH_BOUNDS = 0x9000, Ogre::M_SUBMESH_NAME_TABLE = 0xA000, Ogre::M_SUBMESH_NAME_TABLE_ELEMENT = 0xA100, Ogre::M_EDGE_LISTS = 0xB000, Ogre::M_EDGE_LIST_LOD = 0xB100, Ogre::M_EDGE_GROUP = 0xB110, Ogre::M_POSES = 0xC000, Ogre::M_POSE = 0xC100, Ogre::M_POSE_VERTEX = 0xC111, Ogre::M_ANIMATIONS = 0xD000, Ogre::M_ANIMATION = 0xD100, Ogre::M_ANIMATION_BASEINFO = 0xD105, Ogre::M_ANIMATION_TRACK = 0xD110, Ogre::M_ANIMATION_MORPH_KEYFRAME = 0xD111, Ogre::M_ANIMATION_POSE_KEYFRAME = 0xD112, Ogre::M_ANIMATION_POSE_REF = 0xD113, Ogre::M_TABLE_EXTREMES = 0xE000, Ogre::M_GEOMETRY_NORMALS = 0x5100, Ogre::M_GEOMETRY_COLOURS = 0x5200, Ogre::M_GEOMETRY_TEXCOORDS = 0x5300 }
| Definition of the OGRE .mesh file format. More...
enum | Ogre::TextureAccess { Ogre::TA_READ = 0x01, Ogre::TA_WRITE = 0x10, Ogre::TA_READ_WRITE = TA_READ | TA_WRITE }
| Enum identifying the texture access privilege. More...
enum | Ogre::TextureMipmap { Ogre::MIP_UNLIMITED = 0x7FFFFFFF, Ogre::MIP_DEFAULT = -1 }
| Enum identifying special mipmap numbers. More...
enum | Ogre::TextureType { Ogre::TEX_TYPE_1D = 1, Ogre::TEX_TYPE_2D = 2, Ogre::TEX_TYPE_3D = 3, Ogre::TEX_TYPE_CUBE_MAP = 4, Ogre::TEX_TYPE_2D_ARRAY = 5, Ogre::TEX_TYPE_2D_RECT = 6 }
| Enum identifying the texture type. More...
enum | Ogre::TextureUsage { Ogre::TU_STATIC = HardwareBuffer::HBU_STATIC, Ogre::TU_DYNAMIC = HardwareBuffer::HBU_DYNAMIC, Ogre::TU_WRITE_ONLY = HardwareBuffer::HBU_WRITE_ONLY, Ogre::TU_STATIC_WRITE_ONLY = HardwareBuffer::HBU_STATIC_WRITE_ONLY, Ogre::TU_DYNAMIC_WRITE_ONLY = HardwareBuffer::HBU_DYNAMIC_WRITE_ONLY, Ogre::TU_DYNAMIC_WRITE_ONLY_DISCARDABLE = HardwareBuffer::HBU_DYNAMIC_WRITE_ONLY_DISCARDABLE, Ogre::TU_AUTOMIPMAP = 16, Ogre::TU_RENDERTARGET = 32, Ogre::TU_NOTSHADERRESOURCE = 64, Ogre::TU_DEFAULT = TU_AUTOMIPMAP | TU_STATIC_WRITE_ONLY }
| Enum identifying the texture usage. More...

## Detailed Description

## Typedef Documentation

## ◆ FileInfoList

typedef std::vector<FileInfo> Ogre::FileInfoList

## ◆ FileInfoListPtr

typedef SharedPtr<FileInfoList> Ogre::FileInfoListPtr

## ◆ DataStreamList

typedef std::list<DataStreamPtr> Ogre::DataStreamList

List of DataStream items.

## ◆ BackgroundProcessTicket

typedef WorkQueue::RequestID Ogre::BackgroundProcessTicket

Identifier of a background process.

## Enumeration Type Documentation

## ◆ GpuProgramType

enum Ogre::GpuProgramType

Enumerates the types of programs which can run on the GPU.

Enumerator
GPT_VERTEX_PROGRAM |
GPT_FRAGMENT_PROGRAM |
GPT_GEOMETRY_PROGRAM |
GPT_DOMAIN_PROGRAM |
GPT_HULL_PROGRAM |
GPT_COMPUTE_PROGRAM |

## ◆ anonymous enum

anonymous enum

Enumerator
GPT_COUNT |

## ◆ MeshChunkID

enum Ogre::MeshChunkID

Definition of the OGRE .mesh file format.

.mesh files are binary files (for read efficiency at runtime) and are arranged into chunks of data, very like 3D Studio's format. A chunk always consists of: unsigned short CHUNK_ID : one of the following chunk ids identifying the chunk unsigned long LENGTH : length of the chunk in bytes, including this header void* DATA : the data, which may contain other sub-chunks (various data types)

A .mesh file can contain both the definition of the Mesh itself, and optionally the definitions of the materials is uses (although these can be omitted, if so the Mesh assumes that at runtime the Materials referred to by name in the Mesh are loaded/created from another source)

A .mesh file only contains a single mesh, which can itself have multiple submeshes.

Enumerator
M_HEADER |
M_MESH |
M_SUBMESH |
M_SUBMESH_OPERATION |
M_SUBMESH_BONE_ASSIGNMENT |
M_SUBMESH_TEXTURE_ALIAS |
M_GEOMETRY |
M_GEOMETRY_VERTEX_DECLARATION |
M_GEOMETRY_VERTEX_ELEMENT |
M_GEOMETRY_VERTEX_BUFFER |
M_GEOMETRY_VERTEX_BUFFER_DATA |
M_MESH_SKELETON_LINK |
M_MESH_BONE_ASSIGNMENT |
M_MESH_LOD_LEVEL |
M_MESH_LOD_USAGE |
M_MESH_LOD_MANUAL |
M_MESH_LOD_GENERATED |
M_MESH_BOUNDS |
M_SUBMESH_NAME_TABLE |
M_SUBMESH_NAME_TABLE_ELEMENT |
M_EDGE_LISTS |
M_EDGE_LIST_LOD |
M_EDGE_GROUP |
M_POSES |
M_POSE |
M_POSE_VERTEX |
M_ANIMATIONS |
M_ANIMATION |
M_ANIMATION_BASEINFO |
M_ANIMATION_TRACK |
M_ANIMATION_MORPH_KEYFRAME |
M_ANIMATION_POSE_KEYFRAME |
M_ANIMATION_POSE_REF |
M_TABLE_EXTREMES |
M_GEOMETRY_NORMALS |
M_GEOMETRY_COLOURS |
M_GEOMETRY_TEXCOORDS |

## ◆ TextureUsage

enum Ogre::TextureUsage

Enum identifying the texture usage.

Enumerator
TU_STATIC | same as HardwareBuffer::HBU_STATIC
TU_DYNAMIC | same as HardwareBuffer::HBU_DYNAMIC
TU_WRITE_ONLY | same as HardwareBuffer::HBU_WRITE_ONLY
TU_STATIC_WRITE_ONLY | same as HardwareBuffer::HBU_STATIC_WRITE_ONLY
TU_DYNAMIC_WRITE_ONLY | same as HardwareBuffer::HBU_DYNAMIC_WRITE_ONLY
TU_DYNAMIC_WRITE_ONLY_DISCARDABLE | same as HardwareBuffer::HBU_DYNAMIC_WRITE_ONLY_DISCARDABLE
TU_AUTOMIPMAP | Mipmaps will be automatically generated for this texture. The exact algorithm used is not defined, but you can assume it to be a 2x2 box filter.
TU_RENDERTARGET | This texture will be a render target, i.e. used as a target for render to texture setting this flag will ignore all other texture usages except TU_AUTOMIPMAP and TU_NOTSHADERRESOURCE
TU_NOTSHADERRESOURCE | Hint, that could be combined with TU_RENDERTARGET to remove possible limitations on some hardware.
TU_DEFAULT | Default to automatic mipmap generation static textures.

## ◆ TextureAccess

enum Ogre::TextureAccess

Enum identifying the texture access privilege.

Enumerator
TA_READ |
TA_WRITE |
TA_READ_WRITE |

## ◆ TextureType

enum Ogre::TextureType

Enum identifying the texture type.

Enumerator
TEX_TYPE_1D | 1D texture, used in combination with 1D texture coordinates
TEX_TYPE_2D | 2D texture, used in combination with 2D texture coordinates (default)
TEX_TYPE_3D | 3D volume texture, used in combination with 3D texture coordinates
TEX_TYPE_CUBE_MAP | cube map (six two dimensional textures, one for each cube face), used in combination with 3D texture coordinates
TEX_TYPE_2D_ARRAY | 2D texture array
TEX_TYPE_2D_RECT | 2D non-square texture, used in combination with 2D texture coordinates

## ◆ TextureMipmap

enum Ogre::TextureMipmap

Enum identifying special mipmap numbers.

Enumerator
MIP_UNLIMITED | Generate mipmaps up to 1x1.
MIP_DEFAULT | Use TextureManager default.