Files
Work/ddraw/DSPENUM.HPP
2024-08-07 09:16:27 -04:00

35 lines
933 B
C++

#ifndef _DDRAW_DISPLAYENUMERATOR_HPP_
#define _DDRAW_DISPLAYENUMERATOR_HPP_
#ifndef _COMMON_BLOCK_HPP_
#include <common/block.hpp>
#endif
#ifndef _DDRAW_DDRAW_HPP_
#include <ddraw/ddraw.hpp>
#endif
#ifndef _DDRAW_SURFACEDESCRIPTION_HPP_
#include <ddraw/sfcdesc.hpp>
#endif
class DisplayEnumerator
{
public:
friend class DirectDraw;
DisplayEnumerator(void);
virtual ~DisplayEnumerator();
Block<SurfaceDescription> &enumeratedModes(void);
protected:
virtual void enumModes(SurfaceDescription &surfaceDescription);
private:
DisplayEnumerator(const DisplayEnumerator &someDisplayEnumerator);
DisplayEnumerator &operator=(const DisplayEnumerator &someDisplayEnumerator);
static HRESULT WINAPI enumModesCallback(LPDDSURFACEDESC2 lpDDSurfaceDesc,LPVOID lpContext);
Block<SurfaceDescription> mEnumeratedModes;
};
inline
Block<SurfaceDescription> &DisplayEnumerator::enumeratedModes(void)
{
return mEnumeratedModes;
}
#endif