Skip to content
Permalink
Browse files

WinRT: more "Windows RT" to "WinRT" renaming

  • Loading branch information
DavidLudwig committed Aug 27, 2013
1 parent 3070086 commit 1e78c4a5d1dbdce83ae4ddfdc3a0977b48cc4f41
@@ -40,7 +40,7 @@
#define SDL_MAIN_AVAILABLE

#elif defined(__WINRT__)
/* On Windows RT, SDL provides a main function that initializes CoreApplication,
/* On WinRT, SDL provides a main function that initializes CoreApplication,
creating an instance of IFrameworkView in the process.
Please note that #include'ing SDL_main.h is not enough to get a main()
@@ -73,7 +73,7 @@
#ifdef HAVE_MATH_H
# if defined(__WINRT__)
/* Defining _USE_MATH_DEFINES is required to get M_PI to be defined on
Windows RT. See http://msdn.microsoft.com/en-us/library/4hwaceh6.aspx
WinRT. See http://msdn.microsoft.com/en-us/library/4hwaceh6.aspx
for more information.
*/
# define _USE_MATH_DEFINES
@@ -94,11 +94,11 @@ extern DECLSPEC const char * SDLCALL SDL_AndroidGetExternalStoragePath();
#endif /* __ANDROID__ */


/* Platform specific functions for Windows RT */
/* Platform specific functions for WinRT */
#if defined(__WINRT__) && __WINRT__

/**
* \brief Windows RT / Windows Phone path types
* \brief WinRT / Windows Phone path types
*/
typedef enum
{
@@ -122,9 +122,9 @@ typedef enum


/**
* \brief Retrieves a Windows RT defined path on the local file system
* \brief Retrieves a WinRT defined path on the local file system
*
* \note Documentation on most app-specific path types on Windows RT
* \note Documentation on most app-specific path types on WinRT
* can be found on MSDN, at the URL:
* http://msdn.microsoft.com/en-us/library/windows/apps/hh464917.aspx
*
@@ -139,9 +139,9 @@ typedef enum
extern DECLSPEC const wchar_t * SDLCALL SDL_WinRTGetFSPathUNICODE(SDL_WinRT_Path pathType);

/**
* \brief Retrieves a Windows RT defined path on the local file system
* \brief Retrieves a WinRT defined path on the local file system
*
* \note Documentation on most app-specific path types on Windows RT
* \note Documentation on most app-specific path types on WinRT
* can be found on MSDN, at the URL:
* http://msdn.microsoft.com/en-us/library/windows/apps/hh464917.aspx
*
@@ -177,7 +177,7 @@ struct SDL_SysWMinfo
#if defined(SDL_VIDEO_DRIVER_WINRT)
struct
{
IUnknown * window; /**< The Windows RT CoreWindow */
IUnknown * window; /**< The WinRT CoreWindow */
} winrt;
#endif
#if defined(SDL_VIDEO_DRIVER_X11)
@@ -22,7 +22,7 @@
/* WinRT NOTICE:
A number of changes were warranted to SDL's XAudio2 backend in order to
get it compiling for Windows RT.
get it compiling for WinRT.
When compiling for WinRT, XAudio2.h requires that it be compiled in a C++
file, and not a straight C file. Trying to compile it as C leads to lots
@@ -57,21 +57,21 @@
http://blogs.msdn.com/b/chuckw/archive/2012/04/02/xaudio2-and-windows-8-consumer-preview.aspx
1. Windows' thread synchronization function, CreateSemaphore, was removed
from Windows RT. SDL's semaphore API was substituted instead.
from WinRT. SDL's semaphore API was substituted instead.
2. The method calls, IXAudio2::GetDeviceCount and IXAudio2::GetDeviceDetails
were removed from the XAudio2 API. Microsoft is telling developers to
use APIs in Windows::Foundation instead.
For SDL, the missing methods were reimplemented using the APIs Microsoft
said to use.
3. CoInitialize and CoUninitialize are not available in Windows RT.
3. CoInitialize and CoUninitialize are not available in WinRT.
These calls were removed, as COM will have been initialized earlier,
at least by the call to the WinRT app's main function
(aka 'int main(Platform::Array<Platform::String^>^)). (DLudwig:
This was my understanding of how WinRT: the 'main' function uses
a tag of [MTAThread], which should initialize COM. My understanding
of COM is somewhat limited, and I may be incorrect here.)
4. IXAudio2::CreateMasteringVoice changed its integer-based 'DeviceIndex'
argument to a string-based one, 'szDeviceId'. In Windows RT, the
argument to a string-based one, 'szDeviceId'. In WinRT, the
string-based argument will be used.
*/

@@ -2,7 +2,7 @@
#pragma once

//
// Re-implementation of methods removed from XAudio2 (in Windows RT):
// Re-implementation of methods removed from XAudio2 (in WinRT):
//

typedef struct XAUDIO2_DEVICE_DETAILS
@@ -22,19 +22,19 @@ HRESULT IXAudio2_GetDeviceDetails(IXAudio2 * unused, UINT32 index, XAUDIO2_DEVIC
// C-style macros to call XAudio2's methods in C++:
//

#define IXAudio2_CreateMasteringVoice(A, B, C, D, E, F, G) (A)->CreateMasteringVoice((B), (C), (D), (E), (F), (G))
#define IXAudio2_CreateSourceVoice(A, B, C, D, E, F, G, H) (A)->CreateSourceVoice((B), (C), (D), (E), (F), (G), (H))
#define IXAudio2_QueryInterface(A, B, C) (A)->QueryInterface((B), (C))
#define IXAudio2_Release(A) (A)->Release()
#define IXAudio2_StartEngine(A) (A)->StartEngine()
#define IXAudio2_StopEngine(A) (A)->StopEngine()

#define IXAudio2MasteringVoice_DestroyVoice(A) (A)->DestroyVoice()

#define IXAudio2SourceVoice_DestroyVoice(A) (A)->DestroyVoice()
#define IXAudio2SourceVoice_Discontinuity(A) (A)->Discontinuity()
#define IXAudio2SourceVoice_FlushSourceBuffers(A) (A)->FlushSourceBuffers()
#define IXAudio2SourceVoice_GetState(A, B) (A)->GetState((B))
#define IXAudio2SourceVoice_Start(A, B, C) (A)->Start((B), (C))
#define IXAudio2SourceVoice_Stop(A, B, C) (A)->Stop((B), (C))
#define IXAudio2SourceVoice_SubmitSourceBuffer(A, B, C) (A)->SubmitSourceBuffer((B), (C))
#define IXAudio2_CreateMasteringVoice(A, B, C, D, E, F, G) (A)->CreateMasteringVoice((B), (C), (D), (E), (F), (G))
#define IXAudio2_CreateSourceVoice(A, B, C, D, E, F, G, H) (A)->CreateSourceVoice((B), (C), (D), (E), (F), (G), (H))
#define IXAudio2_QueryInterface(A, B, C) (A)->QueryInterface((B), (C))
#define IXAudio2_Release(A) (A)->Release()
#define IXAudio2_StartEngine(A) (A)->StartEngine()
#define IXAudio2_StopEngine(A) (A)->StopEngine()

#define IXAudio2MasteringVoice_DestroyVoice(A) (A)->DestroyVoice()

#define IXAudio2SourceVoice_DestroyVoice(A) (A)->DestroyVoice()
#define IXAudio2SourceVoice_Discontinuity(A) (A)->Discontinuity()
#define IXAudio2SourceVoice_FlushSourceBuffers(A) (A)->FlushSourceBuffers()
#define IXAudio2SourceVoice_GetState(A, B) (A)->GetState((B))
#define IXAudio2SourceVoice_Start(A, B, C) (A)->Start((B), (C))
#define IXAudio2SourceVoice_Stop(A, B, C) (A)->Stop((B), (C))
#define IXAudio2SourceVoice_SubmitSourceBuffer(A, B, C) (A)->SubmitSourceBuffer((B), (C))
@@ -56,7 +56,7 @@ extern SDL_VideoDevice * WINRT_GlobalSDLVideoDevice;
typedef int (*SDL_WinRT_MainFunction)(int, char **);
static SDL_WinRT_MainFunction SDL_WinRT_main = nullptr;

// HACK, DLudwig: record a reference to the global, Windows RT 'app'/view.
// HACK, DLudwig: record a reference to the global, WinRT 'app'/view.
// SDL/WinRT will use this throughout its code.
//
// TODO, WinRT: consider replacing SDL_WinRTGlobalApp with something
@@ -129,7 +129,7 @@ static void WINRT_SetDisplayOrientationsPreference(void *userdata, const char *n

// Set the orientation/rotation preferences. Please note that this does
// not constitute a 100%-certain lock of a given set of possible
// orientations. According to Microsoft's documentation on Windows RT [1]
// orientations. According to Microsoft's documentation on WinRT [1]
// when a device is not capable of being rotated, Windows may ignore
// the orientation preferences, and stick to what the device is capable of
// displaying.

0 comments on commit 1e78c4a

Please sign in to comment.