/* _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
|
|   windowManager.h
|
+ -------------------------------------------------------------------------------------------------
|
|	ウィンドウ管理クラス
|
+ _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ */

#pragma once

class WindowManager
{
	private:
		HWND		m_windowHandle;		// ウィンドウハンドル
		HINSTANCE	m_instanceHandle;	// インスタンスハンドル
		char*		m_cmdLine;			// コマンドライン引数
		int			m_cmdShowNum;		// ウィンドウ状態
		int			m_winWidth;			// ウィンドウ幅
		int			m_winHeight;		// ウィンドウ高さ

	public:
		WindowManager();
		~WindowManager();

		void	release(void);		// 解放
		void	init(HINSTANCE hInst, char* cmdLine, int cmdShow);			// 初期化

		void	createWindow(int width, int height);							// ウィンドウ生成
		LRESULT	messageProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam);	// メッセージ処理

		HWND	getHWnd(void){ return(m_windowHandle); }	// ウィンドウハンドル取得

		static WindowManager* getInstance(void);
};

