00001
00002
00003
00004
00005 #ifndef __I_IRRLICHT_CREATION_PARAMETERS_H_INCLUDED__
00006 #define __I_IRRLICHT_CREATION_PARAMETERS_H_INCLUDED__
00007
00008 #include "EDriverTypes.h"
00009 #include "EDeviceTypes.h"
00010 #include "dimension2d.h"
00011 #include "ILogger.h"
00012
00013 namespace irr
00014 {
00015 class IEventReceiver;
00016
00018
00019 struct SIrrlichtCreationParameters
00020 {
00022 SIrrlichtCreationParameters() :
00023 DeviceType(EIDT_BEST),
00024 DriverType(video::EDT_BURNINGSVIDEO),
00025 WindowSize(core::dimension2d<u32>(800, 600)),
00026 Bits(16),
00027 ZBufferBits(16),
00028 Fullscreen(false),
00029 Stencilbuffer(false),
00030 Vsync(false),
00031 AntiAlias(0),
00032 WithAlphaChannel(false),
00033 Doublebuffer(true),
00034 IgnoreInput(false),
00035 Stereobuffer(false),
00036 HighPrecisionFPU(false),
00037 EventReceiver(0),
00038 WindowId(0),
00039 LoggingLevel(ELL_INFORMATION),
00040 SDK_version_do_not_use(IRRLICHT_SDK_VERSION)
00041 {
00042 }
00043
00044 SIrrlichtCreationParameters(const SIrrlichtCreationParameters& other) :
00045 SDK_version_do_not_use(IRRLICHT_SDK_VERSION)
00046 {*this = other;}
00047
00048 SIrrlichtCreationParameters& operator=(const SIrrlichtCreationParameters& other)
00049 {
00050 DeviceType = other.DeviceType;
00051 DriverType = other.DriverType;
00052 WindowSize = other.WindowSize;
00053 Bits = other.Bits;
00054 ZBufferBits = other.ZBufferBits;
00055 Fullscreen = other.Fullscreen;
00056 Stencilbuffer = other.Stencilbuffer;
00057 Vsync = other.Vsync;
00058 AntiAlias = other.AntiAlias;
00059 WithAlphaChannel = other.WithAlphaChannel;
00060 Doublebuffer = other.Doublebuffer;
00061 IgnoreInput = other.IgnoreInput;
00062 Stereobuffer = other.Stereobuffer;
00063 HighPrecisionFPU = other.HighPrecisionFPU;
00064 EventReceiver = other.EventReceiver;
00065 WindowId = other.WindowId;
00066 LoggingLevel = other.LoggingLevel;
00067 return *this;
00068 }
00069
00071
00081 E_DEVICE_TYPE DeviceType;
00082
00084
00088 video::E_DRIVER_TYPE DriverType;
00089
00091 core::dimension2d<u32> WindowSize;
00092
00094 u8 Bits;
00095
00097 u8 ZBufferBits;
00098
00100
00101 bool Fullscreen;
00102
00104
00109 bool Stencilbuffer;
00110
00112
00115 bool Vsync;
00116
00118
00133 u8 AntiAlias;
00134
00136
00144 bool WithAlphaChannel;
00145
00147
00152 bool Doublebuffer;
00153
00155
00159 bool IgnoreInput;
00160
00162
00167 bool Stereobuffer;
00168
00170
00176 bool HighPrecisionFPU;
00177
00179 IEventReceiver* EventReceiver;
00180
00182
00232 void* WindowId;
00233
00235
00240 ELOG_LEVEL LoggingLevel;
00241
00243
00245 const c8* const SDK_version_do_not_use;
00246 };
00247
00248
00249 }
00250
00251 #endif
00252