Main Page Namespace List Class Hierarchy Alphabetical List Compound List File List Namespace Members Compound Members File Members Related Pages

# Ogre::D3DDeviceList Class Reference

Encapsulates enumeration of Direct3D devices. More...

`#include <OgreD3D7DeviceList.h>`

List of all members.

## Public Methods

| D3DDeviceList (LPDIRECT3D7 lpD3D)
| ~D3DDeviceList ()
BOOL | enumerate (void)
D3DDevice * | item (size_t index)
size_t | count (void)
D3DDevice * | getBest (unsigned int minColourDepth)
| Retrieves the 'best' 3D device type.

## Public Attributes

LPDIRECT3D7 | lpD3D

## Private Methods

void | AddDevice (LPSTR lpDeviceDesc, LPSTR lpDeviceName, LPD3DDEVICEDESC7 lpD3DDeviceDesc)

## Private Attributes

std::vector< D3DDevice > | mDeviceList

## Friends

HRESULT CALLBACK | D3DEnumDevicesCallback (LPSTR lpDeviceDescription, LPSTR lpDeviceName, LPD3DDEVICEDESC7 lpD3DDeviceDesc, LPVOID lpContext)

## Detailed Description

Encapsulates enumeration of Direct3D devices.

Utility class for D3DRenderSystem.

Definition at line 37 of file OgreD3D7DeviceList.h.

## Constructor & Destructor Documentation

Ogre::D3DDeviceList::D3DDeviceList | ( | LPDIRECT3D7 | lpD3D | ) |

| Definition at line 54 of file OgreD3D7DeviceList.cpp. References enumerate(), and lpD3D.

Ogre::D3DDeviceList::~D3DDeviceList | ( |  | ) |

| Definition at line 67 of file OgreD3D7DeviceList.cpp. References Ogre::D3DDevice::Cleanup(), count(), item(), and mDeviceList.

## Member Function Documentation

void Ogre::D3DDeviceList::AddDevice | ( | LPSTR | lpDeviceDesc,
|  | LPSTR | lpDeviceName,
|  | LPD3DDEVICEDESC7 | lpD3DDeviceDesc
| ) | `[private]`

| Definition at line 93 of file OgreD3D7DeviceList.cpp. References Ogre::D3DDevice, lpD3D, and mDeviceList. Referenced by Ogre::D3DEnumDevicesCallback().

size_t Ogre::D3DDeviceList::count | ( | void |  | ) |

| Definition at line 114 of file OgreD3D7DeviceList.cpp. References mDeviceList. Referenced by ~D3DDeviceList().

BOOL Ogre::D3DDeviceList::enumerate | ( | void |  | ) |

| Definition at line 78 of file OgreD3D7DeviceList.cpp. References D3DEnumDevicesCallback, and lpD3D. Referenced by D3DDeviceList().

D3DDevice * Ogre::D3DDeviceList::getBest | ( | unsigned int | minColourDepth | ) |

Retrieves the 'best' 3D device type.

This method returns the device type that is 'best' out of those available. The 3 types that might be present are software emulation, hardware accelerated (HAL), and hardware transform and light. Generally the latter are preferred over the former, however in some cases (mainly very low-end cards) the hardware accelerated device type supports less features than the software mode so may be preferred. In addition some HALs don't support the full range of rendering bit depths (e.g. Matrox Millennium 1/2) so if a 32-bit colour depth is chosen, software mode must be used.

Definition at line 124 of file OgreD3D7DeviceList.cpp.

References mDeviceList.

Referenced by Ogre::D3D7RenderWindow::create(), and Ogre::D3D7RenderWindow::createDepthBuffer().

D3DDevice * Ogre::D3DDeviceList::item | ( | size_t | index | ) |

| Definition at line 119 of file OgreD3D7DeviceList.cpp. References mDeviceList. Referenced by ~D3DDeviceList().

## Friends And Related Function Documentation

HRESULT CALLBACK D3DEnumDevicesCallback | ( | LPSTR | lpDeviceDescription,
|  | LPSTR | lpDeviceName,
|  | LPD3DDEVICEDESC7 | lpD3DDeviceDesc,
|  | LPVOID | lpContext
| ) | `[friend]`

| Definition at line 36 of file OgreD3D7DeviceList.cpp. Referenced by enumerate().

## Member Data Documentation

LPDIRECT3D7 Ogre::D3DDeviceList::lpD3D

| Definition at line 53 of file OgreD3D7DeviceList.h. Referenced by AddDevice(), D3DDeviceList(), and enumerate().

std::vector<D3DDevice> Ogre::D3DDeviceList::mDeviceList`[private]`

| Definition at line 44 of file OgreD3D7DeviceList.h. Referenced by AddDevice(), count(), getBest(), item(), and ~D3DDeviceList().

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

- OgreD3D7DeviceList.h
- OgreD3D7DeviceList.cpp

Copyright © 2002-2003 by The OGRE Team
Last modified Sun Nov 28 19:49:29 2004