YSTest  PreAlpha_b400_20130424
The YSLib Test Project
 全部  命名空间 文件 函数 变量 类型定义 枚举 枚举值 友元 宏定义  
YSLib::Application类 参考

程序实例。 更多...

#include <yapp.h>

类 YSLib::Application 继承关系图:
YSLib::Application 的协作图:

Public 成员函数

 Application ()
 无参数构造。
 
virtual ~Application ()
 析构:释放 Shell 所有权和其它资源。
 
shared_ptr< Shell > GetShellHandle () const ynothrow
 取得线程空间中当前运行的 Shell 的句柄。
 
void OnGotMessage (const Message &) override
 处理消息:分发消息。
 
bool Switch (shared_ptr< Shell > &) ynothrow
 线程切换:若参数非空,和线程空间中当前运行的 Shell 的句柄交换。
 
bool Switch (shared_ptr< Shell > &&h) ynothrow
 线程切换:若参数非空,和线程空间中当前运行的 Shell 的句柄交换。
 

Public 属性

MessageQueue Queue
 主消息队列:在程序实例中实现以保证单线程。
 
std::function< void()> ApplicationExit
 资源释放函数。
 

Protected 属性

shared_ptr< Shell > hShell
 当前 Shell 句柄:指示当前线程空间中运行的 Shell 。
 

详细描述

程序实例。

自从
build 243

在文件 yapp.h42 行定义.

构造及析构函数说明

YSL_BEGIN Application::Application ( )

无参数构造。

在文件 yapp.cpp32 行定义.

Application::~Application ( )
virtual

析构:释放 Shell 所有权和其它资源。

在文件 yapp.cpp35 行定义.

参考 ApplicationExit,hShell,Queue , 以及 YAssert.

成员函数说明

shared_ptr<Shell> YSLib::Application::GetShellHandle ( ) const
inline

取得线程空间中当前运行的 Shell 的句柄。

在文件 yapp.h73 行定义.

参考自 OnGotMessage().

这是这个函数的调用关系图:

void Application::OnGotMessage ( const Message &  msg)
override

处理消息:分发消息。

前置条件
断言:当前 Shell 句柄有效。
自从
build 317

在文件 yapp.cpp48 行定义.

参考 GetShellHandle() , 以及 YAssert.

函数调用图:

bool YSLib::Application::Switch ( shared_ptr< Shell > &  )

线程切换:若参数非空,和线程空间中当前运行的 Shell 的句柄交换。

返回
参数是否有效。
自从
build 295
bool YSLib::Application::Switch ( shared_ptr< Shell > &&  h)
inline

线程切换:若参数非空,和线程空间中当前运行的 Shell 的句柄交换。

返回
参数是否有效。
警告
空句柄在此处是可接受的,但继续运行可能会导致断言失败。
自从
build 295

在文件 yapp.h101 行定义.

参考 h.

类成员变量说明

std::function<void()> YSLib::Application::ApplicationExit

资源释放函数。

在文件 yapp.h56 行定义.

参考自 ~Application().

shared_ptr<Shell> YSLib::Application::hShell
protected

当前 Shell 句柄:指示当前线程空间中运行的 Shell 。

注解
全局单线程,生存期与进程相同。

在文件 yapp.h52 行定义.

参考自 ~Application().

MessageQueue YSLib::Application::Queue

主消息队列:在程序实例中实现以保证单线程。

在文件 yapp.h45 行定义.

参考自 PostMessage() , 以及 ~Application().


该类的文档由以下文件生成: