157 lines
3.5 KiB
C++
157 lines
3.5 KiB
C++
#ifndef _DDRAW_DEVICEDESCRIPTION_HPP_
|
|
#define _DDRAW_DEVICEDESCRIPTION_HPP_
|
|
#ifndef _COMMON_STRING_HPP_
|
|
#include <common/string.hpp>
|
|
#endif
|
|
#ifndef _DDRAW_DDRAW_HPP_
|
|
#include <ddraw/ddraw.hpp>
|
|
#endif
|
|
|
|
class DeviceDescription
|
|
{
|
|
public:
|
|
DeviceDescription(void);
|
|
DeviceDescription(const DeviceDescription &someDeviceDescription);
|
|
virtual ~DeviceDescription();
|
|
DeviceDescription &operator=(const DeviceDescription &someDeviceDescription);
|
|
const GUID &guid(void)const;
|
|
void guid(const GUID &guid);
|
|
const String &deviceName(void)const;
|
|
void deviceName(const String &deviceName);
|
|
const String &deviceDescription(void)const;
|
|
void deviceDescription(const String &deviceDescription);
|
|
const D3DDEVICEDESC &hwDeviceDescription(void)const;
|
|
void hwDeviceDescription(const D3DDEVICEDESC &hwDeviceDescription);
|
|
const D3DDEVICEDESC &swDeviceDescription(void)const;
|
|
void swDeviceDescription(const D3DDEVICEDESC &swDeviceDescription);
|
|
BOOL isHardware(void)const;
|
|
BOOL selected(void)const;
|
|
void selected(BOOL selected);
|
|
private:
|
|
void zeroInit(void);
|
|
|
|
GUID mGUID;
|
|
String mDeviceName;
|
|
String mDeviceDescription;
|
|
D3DDEVICEDESC mHWDeviceDescription;
|
|
D3DDEVICEDESC mSWDeviceDescription;
|
|
BOOL mIsSelected;
|
|
};
|
|
|
|
inline
|
|
DeviceDescription::DeviceDescription(void)
|
|
{
|
|
zeroInit();
|
|
}
|
|
|
|
inline
|
|
DeviceDescription::DeviceDescription(const DeviceDescription &someDeviceDescription)
|
|
{
|
|
*this=someDeviceDescription;
|
|
}
|
|
|
|
inline
|
|
DeviceDescription::~DeviceDescription()
|
|
{
|
|
}
|
|
|
|
inline
|
|
DeviceDescription &DeviceDescription::operator=(const DeviceDescription &someDeviceDescription)
|
|
{
|
|
guid(someDeviceDescription.guid());
|
|
deviceName(someDeviceDescription.deviceName());
|
|
deviceDescription(someDeviceDescription.deviceDescription());
|
|
hwDeviceDescription(someDeviceDescription.hwDeviceDescription());
|
|
swDeviceDescription(someDeviceDescription.swDeviceDescription());
|
|
selected(someDeviceDescription.selected());
|
|
return *this;
|
|
}
|
|
|
|
inline
|
|
const GUID &DeviceDescription::guid(void)const
|
|
{
|
|
return mGUID;
|
|
}
|
|
|
|
inline
|
|
void DeviceDescription::guid(const GUID &guid)
|
|
{
|
|
::memcpy(&mGUID,&((GUID&)guid),sizeof(GUID));
|
|
}
|
|
|
|
inline
|
|
const String &DeviceDescription::deviceName(void)const
|
|
{
|
|
return mDeviceName;
|
|
}
|
|
|
|
inline
|
|
void DeviceDescription::deviceName(const String &deviceName)
|
|
{
|
|
mDeviceName=deviceName;
|
|
}
|
|
|
|
inline
|
|
const String &DeviceDescription::deviceDescription(void)const
|
|
{
|
|
return mDeviceDescription;
|
|
}
|
|
|
|
inline
|
|
void DeviceDescription::deviceDescription(const String &deviceDescription)
|
|
{
|
|
mDeviceDescription=deviceDescription;
|
|
}
|
|
|
|
inline
|
|
const D3DDEVICEDESC &DeviceDescription::hwDeviceDescription(void)const
|
|
{
|
|
return mHWDeviceDescription;
|
|
}
|
|
|
|
inline
|
|
void DeviceDescription::hwDeviceDescription(const D3DDEVICEDESC &hwDeviceDescription)
|
|
{
|
|
::memcpy(&mHWDeviceDescription,&(D3DDEVICEDESC&)hwDeviceDescription,sizeof(D3DDEVICEDESC));
|
|
}
|
|
|
|
inline
|
|
const D3DDEVICEDESC &DeviceDescription::swDeviceDescription(void)const
|
|
{
|
|
return mSWDeviceDescription;
|
|
}
|
|
|
|
inline
|
|
void DeviceDescription::swDeviceDescription(const D3DDEVICEDESC &swDeviceDescription)
|
|
{
|
|
::memcpy(&mSWDeviceDescription,&(D3DDEVICEDESC&)swDeviceDescription,sizeof(D3DDEVICEDESC));
|
|
}
|
|
|
|
inline
|
|
BOOL DeviceDescription::isHardware(void)const
|
|
{
|
|
return hwDeviceDescription().dcmColorModel;
|
|
}
|
|
|
|
inline
|
|
BOOL DeviceDescription::selected(void)const
|
|
{
|
|
return mIsSelected;
|
|
}
|
|
|
|
inline
|
|
void DeviceDescription::selected(BOOL selected)
|
|
{
|
|
mIsSelected=selected;
|
|
}
|
|
|
|
inline
|
|
void DeviceDescription::zeroInit(void)
|
|
{
|
|
::memset(&mGUID,0,sizeof(mGUID));
|
|
::memset(&mHWDeviceDescription,0,sizeof(mHWDeviceDescription));
|
|
::memset(&mSWDeviceDescription,0,sizeof(mSWDeviceDescription));
|
|
mIsSelected=FALSE;
|
|
}
|
|
#endif
|