YSTest: YSLib::Drawing::CompactPixmapEx类 参考

YSTest PreAlpha_b800_20170810 The YSLib Test Project

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

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

Public 成员函数 | Public 属性 | Protected 属性 | 所有成员列表
YSLib::Drawing::CompactPixmapEx类 参考

使用 8 位 Alpha 扩展的标准矩形像素图缓冲区。 更多...

`#include <YGDI.h>`

类 YSLib::Drawing::CompactPixmapEx 继承关系图:
[图例]
YSLib::Drawing::CompactPixmapEx 的协作图:
[图例]

## Public 成员函数

| DefDeCtor (CompactPixmapEx) CompactPixmapEx(ConstBitmapPtr
| 构造：使用指定位图指针和大小。 更多...
| CompactPixmapEx (const CompactPixmapEx &)
| DefDeMoveCtor (CompactPixmapEx) PDefHOp(CompactPixmapEx &
| 复制赋值：使用复制和交换。 更多...
const CompactPixmapEx &buf | ImplRet (ystdex::copy_and_swap(*this, buf)) DefDeMoveAssignment(CompactPixmapEx) DefGetter(const ynothrow
| 取 Alpha 缓冲区的指针。 更多...
const CompactPixmapEx &buf AlphaType pBufferAlpha | get ()) DefGetter(const ynothrow
| 取 Alpha 缓冲区占用空间。 更多...
const CompactPixmapEx &buf AlphaType pBufferAlpha sizeof(AlphaType)*size_t(GetAreaOf(GetSize()))) using CompactPixmap void | SetSize (const Size &) override
| 重新设置缓冲区大小。 更多...
void | ClearImage () const override
| 清除缓冲区。 更多...
| DefClone (const override, CompactPixmapEx) PDefH(void
| 交换。 更多...
Public 成员函数 继承自 YSLib::Drawing::CompactPixmap
| DefDeCtor (CompactPixmap) CompactPixmap(ConstBitmapPtr
| 无参数构造：默认实现。 更多...
| CompactPixmap (unique_ptr< Pixel[]>, const Size &) ynothrow
| 构造：使用指定位图指针和大小。 更多...
| CompactPixmap (const CompactPixmap &)
| DefDeMoveCtor (CompactPixmap) PDefHOp(CompactPixmap &
| 复制赋值：使用复制和交换。 更多...
| DefGetter (const ynothrow ImplI(IImage), Graphics, Context, Graphics(GetBufferPtr(), GetSize())) void SetContent(ConstBitmapPtr
| 设置内容。 更多...
| PDefH (void, SetSize, SDst w, SDst h) ImplExpr(SetSize(
void | SetSize (const Size &) override
| 重新设置缓冲区大小。 更多...
void | SetSizeSwap ()
| 交换宽和高；同时清除缓冲区。 更多...
| DefClone (const ImplI(IImage), CompactPixmap) friend PDefH(void
| 交换。 更多...

## Public 属性

| SDst
const CompactPixmapEx &buf AlphaType | BufferAlphaPtr
const CompactPixmapEx &buf AlphaType pBufferAlpha | size_t
const CompactPixmapEx &buf AlphaType pBufferAlpha | SizeOfBufferAlpha
| swap
CompactPixmapEx & | x
Public 属性 继承自 YSLib::Drawing::CompactPixmap
| SDst
| swap
CompactPixmap & | x

## Protected 属性

unique_ptr< AlphaType[]> | pBufferAlpha
| Alpha 缓冲区指针。 更多...

## 详细描述

使用 8 位 Alpha 扩展的标准矩形像素图缓冲区。

自从
  build 630

后置条件
  满足 `ystdex::is_nothrow_moveable<CompactPixmapEx>()` 。

注解
  保证像素数据和 Alpha 数据分别连续。

在文件 YGDI.h 第 350 行定义.

## 构造及析构函数说明

YSLib::Drawing::CompactPixmapEx::CompactPixmapEx | ( | const CompactPixmapEx & | buf | ) |

在文件 YGDI.cpp 第 151 行定义.

参考 YSLib::Drawing::CopyBitmapBuffer(), YSLib::i, YSLib::Drawing::GGraphics< unique_ptr< Pixel[]> >::pBuffer , 以及 SetSize().

函数调用图:

## 成员函数说明

void YSLib::Drawing::CompactPixmapEx::ClearImage | ( |  | ) | const

overridevirtual

清除缓冲区。

重载 YSLib::Drawing::CompactPixmap .

在文件 YGDI.cpp 第 194 行定义.

参考 YSLib::Drawing::ClearPixels(), YSLib::Drawing::GGraphics< unique_ptr< Pixel[]> >::pBuffer, pBufferAlpha , 以及 YSLib::Drawing::GGraphics< unique_ptr< Pixel[]> >::sGraphics.

参考自 YSLib::DS::UI::DualScreenReader::Reset() , 以及 SetSize().

函数调用图:

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

YSLib::Drawing::CompactPixmapEx::DefClone | ( | const override | ,
|  | CompactPixmapEx |
| ) |  |

交换。

自从
  build 710

YSLib::Drawing::CompactPixmapEx::DefDeCtor | ( | CompactPixmapEx |  | ) |

构造：使用指定位图指针和大小。

YSLib::Drawing::CompactPixmapEx::DefDeMoveCtor | ( | CompactPixmapEx |  | ) |

复制赋值：使用复制和交换。

自从
  build 768

const CompactPixmapEx& buf AlphaType pBufferAlpha YSLib::Drawing::CompactPixmapEx::get | ( |  | ) | const

取 Alpha 缓冲区占用空间。

自从
  build 407

const CompactPixmapEx& buf YSLib::Drawing::CompactPixmapEx::ImplRet | ( | ystdex::copy_and_swap *, | buf | ) | const

取 Alpha 缓冲区的指针。

自从
  build 417

void YSLib::Drawing::CompactPixmapEx::SetSize | ( | const Size & | s | ) |

override

重新设置缓冲区大小。

注解
  若有一边为零则删除缓冲区；若大于缓冲区空间则重新分配； 设置后清除缓冲区。

自从
  build 405

在文件 YGDI.cpp 第 171 行定义.

参考 platform::Descriptions::Alert, CatchThrow, ClearImage(), YSLib::Drawing::GGraphics< unique_ptr< Pixel[]> >::pBuffer, pBufferAlpha, YSLib::Drawing::GGraphics< unique_ptr< Pixel[]> >::s, YSLib::Drawing::GGraphics< unique_ptr< Pixel[]> >::sGraphics, YSLib::YAssert(), YB_LIKELY , 以及 yunseq.

参考自 YSLib::UI::BufferedTextArea::BufferedTextArea(), CompactPixmapEx(), YSLib::UI::ImplDeDtor() , 以及 YSLib::DS::UI::DualScreenReader::Stretch().

函数调用图:

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

## 类成员变量说明

const CompactPixmapEx& buf AlphaType YSLib::Drawing::CompactPixmapEx::BufferAlphaPtr

在文件 YGDI.h 第 380 行定义.

unique_ptr<AlphaType[]> YSLib::Drawing::CompactPixmapEx::pBufferAlpha

protected

Alpha 缓冲区指针。

自从
  build 417

在文件 YGDI.h 第 357 行定义.

参考自 ClearImage(), YSLib::Drawing::TextRegion::ClearLine(), YSLib::Drawing::TextRegion::Scroll() , 以及 SetSize().

YSLib::Drawing::CompactPixmapEx::SDst

在文件 YGDI.h 第 364 行定义.

参考自 YSLib::Drawing::TextRegion::ClearTextLine() , 以及 YSLib::Drawing::TextRegion::Scroll().

const CompactPixmapEx& buf AlphaType pBufferAlpha YSLib::Drawing::CompactPixmapEx::size_t

在文件 YGDI.h 第 385 行定义.

参考自 YSLib::Drawing::TextRegion::Scroll().

const CompactPixmapEx& buf AlphaType pBufferAlpha YSLib::Drawing::CompactPixmapEx::SizeOfBufferAlpha

在文件 YGDI.h 第 385 行定义.

YSLib::Drawing::CompactPixmapEx::swap

在文件 YGDI.h 第 410 行定义.

CompactPixmapEx& YSLib::Drawing::CompactPixmapEx::x

在文件 YGDI.h 第 410 行定义.

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

- YGDI.h
- YGDI.cpp