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

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

#include <ygdi.h>

类 YSLib::Drawing::CompactPixmap 继承关系图:
YSLib::Drawing::CompactPixmap 的协作图:

Public 成员函数

 DefDeCtor (CompactPixmap) CompactPixmap(ConstBitmapPtr
 无参数构造:默认实现。 更多...
 
 CompactPixmap (unique_ptr< PixelType[]>, const Size &) ynothrow
 构造:使用指定位图指针和大小。 更多...
 
 CompactPixmap (const CompactPixmap &)
 
 CompactPixmap (CompactPixmap &&) ynothrow
 转移构造:转移资源。 更多...
 
 ~CompactPixmap () override
 析构:释放资源。 更多...
 
 PDefHOp (CompactPixmap &,=, CompactPixmap msg) ynothrow ImplRet(msg.swap(*this)
 
*this void SetContent (ConstBitmapPtr, SDst, SDst)
 设置内容。 更多...
 
 PDefH (void, SetSize, SDst w, SDst h) ImplExpr(SetSize(Size(w
 
h void SetSize (const Size &) override
 重新设置缓冲区大小。 更多...
 
void SetSizeSwap ()
 交换宽和高;同时清除缓冲区。 更多...
 
virtual void ClearImage () const
 清除缓冲区。 更多...
 
virtual DefClone (const, CompactPixmap) PDefH(void
 
- Public 成员函数 继承自 YSLib::Drawing::BasicImage
 DefDeCtor (BasicImage) BasicImage(const Graphics &g)
 
 ImplI (IImage) DefGetter(const ynothrow override
 
const Graphics *this ImplI (IImage) DefClone(const override
 
const Graphics *this BasicImage ImplI (IImage) DefSetter(const Size &
 

Public 属性

 SDst
 
virtual swap
 
- Public 属性 继承自 YSLib::Drawing::BasicImage
const Graphics Context
 
const Graphics *this BasicImage Size
 

相关函数

(请注意: 这些不是成员函数.)

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

额外继承的成员函数

- Protected 成员函数 继承自 YSLib::Drawing::Graphics
 Graphics () ynothrow
 默认构造:使用空指针和大小。 更多...
 
yconstfn Graphics (BitmapPtr b, const Size &s={}) ynothrow
 构造:使用指定位图指针和大小。 更多...
 
yconstfn Graphics (const Graphics &g) ynothrow
 复制构造:浅复制。 更多...
 
 DefDeDtor (Graphics) PDefHOp(bool
 析构:默认实现。 更多...
 
const ynothrow ImplRet (!bool(*this)) BitmapPtr operator[](size_t) const ynothrow
 取指定行首元素指针。 更多...
 
 DefCvt (const ynothrow, bool, pBuffer &&sGraphics.Width!=0 &&sGraphics.Height!=0) DefGetter(const ynothrow
 判断有效性。 更多...
 
pBuffer DefGetter (const ynothrow, const Size &, Size, sGraphics) DefGetter(const ynothrow
 
pBuffer sGraphics Width DefGetter (const ynothrow, SDst, Height, sGraphics.Height) DefGetter(const ynothrow
 
pBuffer sGraphics Width sizeof (PixelType)*GetAreaOf(sGraphics)) BitmapPtr at(size_t) const ythrow(GeneralEvent
 < 取缓冲区占用空间。 更多...
 
- Protected 属性 继承自 YSLib::Drawing::Graphics
BitmapPtr pBuffer
 显示缓冲区指针。 更多...
 
Size sGraphics
 
 BitmapPtr
 
 BufferPtr
 
pBuffer SDst
 
pBuffer Width
 
pBuffer sGraphics Width size_t
 
pBuffer sGraphics Width SizeOfBuffer
 
- 静态 Protected 属性 继承自 YSLib::Drawing::Graphics
static const Graphics Invalid
 无效图形接口上下文。 更多...
 

详细描述

标准矩形像素图缓冲区。

注解
满足 std::is_nothrow_move_constructible<T>::value && std::is_nothrow_move_assignable<T>::value
保证像素数据连续。
自从
build 418

在文件 ygdi.h201 行定义.

构造及析构函数说明

YSLib::Drawing::CompactPixmap::CompactPixmap ( unique_ptr< PixelType[]>  p,
const Size s 
)

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

注解
取得所有权。

在文件 ygdi.cpp99 行定义.

YSLib::Drawing::CompactPixmap::CompactPixmap ( const CompactPixmap buf)

在文件 ygdi.cpp102 行定义.

参考 YSLib::Drawing::GetAreaOf(), YSLib::Drawing::Graphics::pBuffer , 以及 SetSize().

函数调用图:

YSLib::Drawing::CompactPixmap::CompactPixmap ( CompactPixmap &&  buf)

转移构造:转移资源。

在文件 ygdi.cpp109 行定义.

参考 YSLib::Drawing::Graphics::pBuffer.

YSLib::Drawing::CompactPixmap::~CompactPixmap ( )
inlineoverride

析构:释放资源。

在文件 ygdi.h226 行定义.

成员函数说明

void YSLib::Drawing::CompactPixmap::ClearImage ( ) const
virtual

清除缓冲区。

在文件 ygdi.cpp151 行定义.

参考 YSLib::Drawing::ClearImage().

参考自 SetSize() , 以及 SetSizeSwap().

函数调用图:

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

virtual YSLib::Drawing::CompactPixmap::DefClone ( const  ,
CompactPixmap   
)
virtual
YSLib::Drawing::CompactPixmap::DefDeCtor ( CompactPixmap  )

无参数构造:默认实现。

注解
零初始化。

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

YSLib::Drawing::CompactPixmap::PDefH ( void  ,
SetSize  ,
SDst  w,
SDst  h 
)
YSLib::Drawing::CompactPixmap::PDefHOp ( CompactPixmap ,
CompactPixmap  msg 
)
void YSLib::Drawing::CompactPixmap::SetContent ( ConstBitmapPtr  s,
SDst  w,
SDst  h 
)

设置内容。

注解
预先设置缓冲区大小。
自从
build 319

在文件 ygdi.cpp116 行定义.

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

函数调用图:

void YSLib::Drawing::CompactPixmap::SetSize ( const Size s)
override

重新设置缓冲区大小。

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

在文件 ygdi.cpp123 行定义.

参考 platform::Descriptions::Alert, ClearImage(), YSLib::Drawing::GetAreaOf(), YSLib::Drawing::Graphics::pBuffer, platform_ex::Windows::s, YSLib::Drawing::Graphics::sGraphics, YAssert , 以及 YB_LIKELY.

参考自 CompactPixmap() , 以及 SetContent().

函数调用图:

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

void YSLib::Drawing::CompactPixmap::SetSizeSwap ( )

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

在文件 ygdi.cpp144 行定义.

参考 ClearImage(), YSLib::Drawing::Size::Height, YSLib::Drawing::Graphics::sGraphics, ystdex::swap() , 以及 YSLib::Drawing::Size::Width.

函数调用图:

友元及相关函数文档

CompactPixmapEx ( )
related

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

自从
build 418
注解
满足 std::is_nothrow_move_constructible<T>::value && std::is_nothrow_move_assignable<T>::value
保证像素数据和 Alpha 数据分别连续。

Alpha 缓冲区指针。

自从
build 417

无参数构造。

注解
零初始化。

在文件 ygdi.h303 行定义.

类成员变量说明

YSLib::Drawing::CompactPixmap::SDst

在文件 ygdi.h212 行定义.

virtual YSLib::Drawing::CompactPixmap::swap

在文件 ygdi.h272 行定义.


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