YSTest: YSLib::Drawing::BitmapBuffer类 参考

YSTest PreAlpha_b400_20130424 The YSLib Test Project

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

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

全部 类 命名空间 文件 函数 变量 类型定义 枚举 枚举值 友元 宏定义 组 页
Public 成员函数 | 所有成员列表
YSLib::Drawing::BitmapBuffer类 参考

标准矩形位图缓冲区。 更多...

`#include <ygdi.h>`

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

## Public 成员函数

| BitmapBuffer ()=default
| 无参数构造：默认实现。
| BitmapBuffer (ConstBitmapPtr, SDst, SDst)
| 构造：使用指定位图指针和大小。
| BitmapBuffer (const BitmapBuffer &)
| BitmapBuffer (BitmapBuffer &&) ynothrow
| 转移构造：转移资源。
virtual | ~BitmapBuffer ()
| 析构：释放资源。
BitmapBuffer & | operator= (const BitmapBuffer &buf)
BitmapBuffer & | operator= (BitmapBuffer &&buf) ynothrow
void | SetContent (ConstBitmapPtr, SDst, SDst)
| 设置内容。
virtual void | SetSize (SDst, SDst)
| 重新设置缓冲区大小。
void | SetSizeSwap ()
| 交换宽和高；同时清除缓冲区。
virtual void | ClearImage () const
| 清除缓冲区。
virtual BitmapBuffer * | Clone () const
void | Swap (BitmapBuffer &buf) ynothrow
const Graphics & | GetContext () const ynothrow

## 额外继承的成员函数

Protected 成员函数 继承自 YSLib::Drawing::Graphics
yconstfn | Graphics (BitmapPtr b={}, const Size &s={}) ynothrow
| 构造：使用指定位图指针和大小。
yconstfn | Graphics (const Graphics &g) ynothrow
| 复制构造：浅复制。
| ~Graphics ()
| 析构：空实现。
bool | operator! () const ynothrow
| 判断无效性。
BitmapPtr | operator[] (size_t) const ynothrow
| 取指定行首元素指针。
| operator bool () const ynothrow
| 判断有效性。
BitmapPtr | GetBufferPtr () const ynothrow
const Size & | GetSize () const ynothrow
SDst | GetWidth () const ynothrow
SDst | GetHeight () const ynothrow
size_t | GetSizeOfBuffer () const ynothrow
| 取缓冲区占用空间。
BitmapPtr | at (size_t) const ythrow(GeneralEvent
| 取指定行首元素指针。
静态 Protected 属性 继承自 YSLib::Drawing::Graphics
static const Graphics | Invalid
| 无效图形接口上下文。

## 详细描述

标准矩形位图缓冲区。

注解
  满足 `std::is_nothrow_move_constructible<T>::value && std::is_nothrow_move_assignable<T>::value` 。

在文件 ygdi.h 第 162 行定义.

## 构造及析构函数说明

YSLib::Drawing::BitmapBuffer::BitmapBuffer | ( |  | ) |

default

无参数构造：默认实现。

注解
  零初始化。

YSLib::Drawing::BitmapBuffer::BitmapBuffer | ( | ConstBitmapPtr | ,
|  | SDst | ,
|  | SDst |
| ) |  |

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

YSLib::Drawing::BitmapBuffer::BitmapBuffer | ( | const BitmapBuffer & |  | ) |

YSLib::Drawing::BitmapBuffer::BitmapBuffer | ( | BitmapBuffer && |  | ) |

转移构造：转移资源。

自从
  build 296

virtual YSLib::Drawing::BitmapBuffer::~BitmapBuffer | ( |  | ) |

inlinevirtual

析构：释放资源。

在文件 ygdi.h 第 184 行定义.

参考 ydelete_array.

## 成员函数说明

void BitmapBuffer::ClearImage | ( |  | ) | const

virtual

清除缓冲区。

被 YSLib::Drawing::BitmapBufferEx 重载.

在文件 ygdi.cpp 第 154 行定义.

参考 ClearImage().

函数调用图:

virtual BitmapBuffer* YSLib::Drawing::BitmapBuffer::Clone | ( |  | ) | const

inlinevirtual

被 YSLib::Drawing::BitmapBufferEx 重载.

在文件 ygdi.h 第 253 行定义.

const Graphics& YSLib::Drawing::BitmapBuffer::GetContext | ( |  | ) | const

inline

在文件 ygdi.h 第 224 行定义.

参考自 YSLib::UI::ImageBrush::operator()().

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

BitmapBuffer& YSLib::Drawing::BitmapBuffer::operator= | ( | const BitmapBuffer & | buf | ) |

inline

在文件 ygdi.h 第 194 行定义.

参考 Swap().

函数调用图:

BitmapBuffer& YSLib::Drawing::BitmapBuffer::operator= | ( | BitmapBuffer && | buf | ) |

inline

在文件 ygdi.h 第 204 行定义.

void BitmapBuffer::SetContent | ( | ConstBitmapPtr | s,
|  | SDst | w,
|  | SDst | h
| ) |  |

设置内容。

注解
  预先设置缓冲区大小。

自从
  build 319

在文件 ygdi.cpp 第 112 行定义.

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

函数调用图:

void BitmapBuffer::SetSize | ( | SDst | w,
|  | SDst | h
| ) |  |

virtual

重新设置缓冲区大小。

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

被 YSLib::Drawing::BitmapBufferEx 重载.

在文件 ygdi.cpp 第 119 行定义.

参考 ClearImage(),YSLib::Drawing::GetAreaOf(),std::swap(),YAssert,YB_UNLIKELY,ydelete_array,ynew , 以及 yunseq().

函数调用图:

void BitmapBuffer::SetSizeSwap | ( |  | ) |

交换宽和高；同时清除缓冲区。

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

参考 ClearImage() , 以及 std::swap().

函数调用图:

void YSLib::Drawing::BitmapBuffer::Swap | ( | BitmapBuffer & | buf | ) |

inline

在文件 ygdi.h 第 260 行定义.

参考自 operator=() , 以及 YSLib::Drawing::BitmapBufferEx::operator=().

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

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

- ygdi.h
- ygdi.cpp