MGL(Win32)
読み取り中…
検索中…
一致する文字列を見つけられません
mgl_win32_main.h
[詳解]
1// SPDX-License-Identifier: Zlib
2/* ------------------------------------------------------------------------- */
9/* ------------------------------------------------------------------------- */
10
11#ifndef INCGUARD_MGL_WIN32_MAIN_H_1614567370
12#define INCGUARD_MGL_WIN32_MAIN_H_1614567370
13
14#include <mgl/mgl_environment.h>
15#if defined(MGL_TARGET_WIN32)
16
17#include <Windows.h>
20
21namespace MGL::Win32
22{
23int Main(
24 HINSTANCE hInstance,
25 HINSTANCE hPrevInstance,
26 LPSTR lpCmdLine,
27 int nCmdShow,
28 MGL::InitializerDelegate &initializer,
29 const Window::Descriptor &windowDescriptor,
30 MakeAppDelegateFunction makeDelegate) noexcept;
31
32/* ------------------------------------------------------------------------- */
44/* ------------------------------------------------------------------------- */
45template <class T>
46constexpr int Main(
47 HINSTANCE hInstance,
48 HINSTANCE hPrevInstance,
49 LPSTR lpCmdLine,
50 int nCmdShow,
51 MGL::InitializerDelegate &initializer,
52 const Window::Descriptor &windowDescriptor = Window::Descriptor()) noexcept
53{
54 return Main(hInstance, hPrevInstance, lpCmdLine, nCmdShow, initializer, windowDescriptor, [](STL::unique_ptr<ApplicationDelegate> &appDelegate)
55 {
56 appDelegate = STL::make_unique<T>();
57 });
58}
59} // namespace MGL::Win32
60
61#endif // MGL_TARGET_WIN32
62#endif // INCGUARD_MGL_WIN32_MAIN_H_1614567370
63
64// vim: et ts=4 sw=4 sts=4
イニシャライザデリゲート
Definition mgl_initializer_delegate.h:60
MGL 環境定義
MGL 初期化と終了
std::unique_ptr< T, Deleter > unique_ptr
MGLのアロケータを利用するユニークポインタ
Definition mgl_stl_memory.h:256
int Main(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow, MGL::InitializerDelegate &initializer, const Window::Descriptor &windowDescriptor, MakeAppDelegateFunction makeDelegate) noexcept
Win32メイン関数
Definition mgl_win32_main.cc:109
MGL Win32用ウィンドウ
ウィンドウ初期化用記述子
Definition mgl_win32_window.h:31