# Ogre::D3DDeviceList Class Reference

Encapsulates enumeration of Direct3D devices. More...

`#include <OgreD3D7DeviceList.h>`

List of all members.

## Public Member Functions

| 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 Member Functions

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 | ) |

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

## Member Function Documentation

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

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

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

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.

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

## Friends And Related Function Documentation

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

## Member Data Documentation

LPDIRECT3D7 Ogre::D3DDeviceList::lpD3D

| Definition at line 53 of file OgreD3D7DeviceList.h.

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

| Definition at line 44 of file OgreD3D7DeviceList.h.

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

- OgreD3D7DeviceList.h

Copyright © 2000-2005 by The OGRE Team
Last modified Sun Nov 20 12:44:16 2005