YSTest: platform_ex::Android::ScreenBuffer类 参考

YSTest PreAlpha_b500_20140530 The YSLib Test Project

- 首页
- 相关页面
- 模块
- 命名空间
- 类
- 文件

- 类列表
- 类索引
- 类继承关系
- 类成员

全部 类 命名空间 文件 函数 变量 类型定义 枚举 枚举值 友元 宏定义 组 页
Public 成员函数 | Private 属性 | 所有成员列表
platform_ex::Android::ScreenBuffer类 参考

虚拟屏幕缓存。 更多...

`#include <Android.h>`

platform_ex::Android::ScreenBuffer 的协作图:
[图例]

## Public 成员函数

| ScreenBuffer (const YSLib::Drawing::Size &)
| 构造：使用指定的缓冲区大小和等于缓冲区宽的像素跨距。 更多...
| ScreenBuffer (const YSLib::Drawing::Size &, YSLib::SDst)
| 构造：使用指定的缓冲区大小和像素跨距。 更多...
| ScreenBuffer (ScreenBuffer &&) ynothrow
| ~ScreenBuffer ()
ScreenBuffer & | operator= (ScreenBuffer &&)
YSLib::Drawing::BitmapPtr | GetBufferPtr () const ynothrow
const YSLib::Drawing::Graphics & | GetContext () const ynothrow
YSLib::Drawing::Size | GetSize () const ynothrow
YSLib::SDst | GetStride () const ynothrow
void | Resize (const YSLib::Drawing::Size &)
| 重新设置大小。 更多...
void | UpdateFrom (YSLib::Drawing::BitmapPtr) ynothrow
| 从缓冲区更新。 更多...
void | swap (ScreenBuffer &) ynothrow
| 交换。 更多...

## Private 属性

std::unique_ptr< ScreenBufferData > | p_impl
YSLib::SDst | width
| 宽：以像素数计量的缓冲区的实际宽度。 更多...

## 相关函数

(请注意: 这些不是成员函数.)
| ScreenRegionBuffer (const YSLib::Drawing::Size &)
| 虚拟屏幕区域缓存。 更多...

## 详细描述

虚拟屏幕缓存。

警告
  非虚析构。

注解
  像素格式和 platform::PixelType 兼容。

自从
  build 492

注解
  像素跨距等于实现的缓冲区的宽。

在文件 Android.h 第 137 行定义.

## 构造及析构函数说明

platform_ex::Android::ScreenBuffer::ScreenBuffer | ( | const YSLib::Drawing::Size & | s | ) |

构造：使用指定的缓冲区大小和等于缓冲区宽的像素跨距。

在文件 Android.cpp 第 120 行定义.

platform_ex::Android::ScreenBuffer::ScreenBuffer | ( | const YSLib::Drawing::Size & | s,
|  | YSLib::SDst | buf_stride
| ) |  |

构造：使用指定的缓冲区大小和像素跨距。

异常

  Exception | 像素跨距小于缓冲区大小。

自从
  build 498

在文件 Android.cpp 第 123 行定义.

platform_ex::Android::ScreenBuffer::ScreenBuffer | ( | ScreenBuffer && | sbuf | ) |

在文件 Android.cpp 第 126 行定义.

platform_ex::Android::ScreenBuffer::~ScreenBuffer | ( |  | ) |

在文件 Android.cpp 第 131 行定义.

## 成员函数说明

BitmapPtr platform_ex::Android::ScreenBuffer::GetBufferPtr | ( |  | ) | const

在文件 Android.cpp 第 135 行定义.

参考 p_impl , 以及 YAssertNonnull.

const YSLib::Drawing::Graphics & platform_ex::Android::ScreenBuffer::GetContext | ( |  | ) | const

自从
  build 499

在文件 Android.cpp 第 141 行定义.

参考 p_impl , 以及 YAssertNonnull.

Size platform_ex::Android::ScreenBuffer::GetSize | ( |  | ) | const

自从
  build 498

在文件 Android.cpp 第 147 行定义.

参考 p_impl, width , 以及 YAssertNonnull.

YSLib::SDst platform_ex::Android::ScreenBuffer::GetStride | ( |  | ) | const

自从
  build 498

在文件 Android.cpp 第 153 行定义.

参考 p_impl , 以及 YAssertNonnull.

ScreenBuffer& platform_ex::Android::ScreenBuffer::operator= | ( | ScreenBuffer && |  | ) |

void platform_ex::Android::ScreenBuffer::Resize | ( | const YSLib::Drawing::Size & | s | ) |

重新设置大小。

注解
  当大小一致时无操作，否则重新分配，可导致 pBuffer 和 hBitmap 值改变。

在文件 Android.cpp 第 160 行定义.

参考 p_impl, width, YSLib::Drawing::Size::Width , 以及 YAssertNonnull.

void platform_ex::Android::ScreenBuffer::swap | ( | ScreenBuffer & | sbuf | ) |

交换。

在文件 Android.cpp 第 178 行定义.

参考 ystdex::swap() , 以及 YAssertNonnull.

函数调用图:

void platform_ex::Android::ScreenBuffer::UpdateFrom | ( | YSLib::Drawing::BitmapPtr | p_buf | ) |

从缓冲区更新。

前置条件
  断言：参数非空。
  缓冲区大小和像素跨距完全一致。

警告
  直接复制，没有边界和大小检查。实际存储必须和 32 位 RGBA8888 兼容。

在文件 Android.cpp 第 169 行定义.

参考 YSLib::Drawing::GetAreaOf() , 以及 YAssertNonnull.

函数调用图:

## 友元及相关函数文档

ScreenRegionBuffer | ( | const YSLib::Drawing::Size & |  | ) |

related

虚拟屏幕区域缓存。

自从
  build 492

在文件 E/include/YCLib/Win32GUI.h 第 235 行定义.

## 类成员变量说明

std::unique_ptr<ScreenBufferData> platform_ex::Android::ScreenBuffer::p_impl

private

不变性
  bool(p_impl) 。

自从
  build 498

在文件 Android.h 第 144 行定义.

参考自 GetBufferPtr(), GetContext(), GetSize(), GetStride() , 以及 Resize().

YSLib::SDst platform_ex::Android::ScreenBuffer::width

private

宽：以像素数计量的缓冲区的实际宽度。

自从
  build 498

在文件 Android.h 第 149 行定义.

参考自 GetSize() , 以及 Resize().

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

- Android.h
- Android.cpp