YSTest: YSLib::Text::TextFileBuffer类 参考

YSTest PreAlpha_b400_20130424 The YSLib Test Project

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

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

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

`#include <textmgr.h>`

YSLib::Text::TextFileBuffer 的协作图:
[图例]

## 类

class | Iterator
| 目标编码迭代器类型。 更多...

## Public 类型

typedef pair< vector< ucs2_t > , size_t > | BlockType
| 缓冲区块类型。
typedef map< size_t, BlockType > | MapType
| 缓冲映射类型。

## Public 成员函数

| TextFileBuffer (TextFile &)
| 构造：使用文本文件。
virtual | ~TextFileBuffer ()
| 析构：空实现。
BlockType & | operator[] (size_t)
| 块随机访问。
size_t | GetBlockN () const ynothrow
| 取缓冲区块数。
Encoding | GetEncoding () const ynothrow
size_t | GetSize () const ynothrow
size_t | GetTextSize () const ynothrow
Iterator | GetBegin () ynothrow
| 取文本缓冲区起始迭代器。
Iterator | GetEnd () ynothrow
| 取文本缓冲区终止迭代器。
Iterator | GetIterator (size_t)
| 取文本字节位置对应的迭代器。
size_t | GetPosition (Iterator)
| 取迭代器对应的文本字节位置。

## 静态 Public 属性

static yconstexpr size_t | BlockSize = 2048U
| 默认文本区块大小。

## Protected 属性

TextFile & | File
| 文本文件引用。
size_t | nTextSize
| 文本大小。
size_t | nBlock
| 区块数。
MapType | Map
| 缓冲映射。

## Private 属性

size_t | fixed_width
| 固定编码每字符的字节数。
size_t | max_width
| 最大编码每字符的字节数。

## 详细描述

在文件 textmgr.h 第 43 行定义.

## 成员类型定义说明

typedef pair<vector<ucs2_t>, size_t> YSLib::Text::TextFileBuffer::BlockType

缓冲区块类型。

保存转换后的文本区块和初始转换偏移状态。

自从
  build 273

在文件 textmgr.h 第 52 行定义.

typedef map<size_t, BlockType> YSLib::Text::TextFileBuffer::MapType

缓冲映射类型。

区块号到指定缓冲区快的映射。

自从
  build 273

在文件 textmgr.h 第 59 行定义.

## 构造及析构函数说明

TextFileBuffer::TextFileBuffer | ( | TextFile & | file | ) |

explicit

构造：使用文本文件。

在文件 textmgr.cpp 第 114 行定义.

参考 fixed_width,max_width , 以及 YAssert.

virtual YSLib::Text::TextFileBuffer::~TextFileBuffer | ( |  | ) |

inlinevirtual

析构：空实现。

在文件 textmgr.h 第 159 行定义.

## 成员函数说明

TextFileBuffer::Iterator TextFileBuffer::GetBegin | ( |  | ) |

取文本缓冲区起始迭代器。

注解
  指向起始字符。

自从
  build 273

在文件 textmgr.cpp 第 165 行定义.

size_t YSLib::Text::TextFileBuffer::GetBlockN | ( |  | ) | const

inline

取缓冲区块数。

自从
  build 273

在文件 textmgr.h 第 172 行定义.

Encoding YSLib::Text::TextFileBuffer::GetEncoding | ( |  | ) | const

inline

在文件 textmgr.h 第 173 行定义.

TextFileBuffer::Iterator TextFileBuffer::GetEnd | ( |  | ) |

取文本缓冲区终止迭代器。

注解
  指向终止字符后一位置。

自从
  build 273

在文件 textmgr.cpp 第 170 行定义.

参考 nBlock.

参考自 GetIterator() , 以及 GetPosition().

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

TextFileBuffer::Iterator TextFileBuffer::GetIterator | ( | size_t | pos | ) |

取文本字节位置对应的迭代器。

自从
  build 273

在文件 textmgr.cpp 第 175 行定义.

参考 BlockSize,CHRLib::ConvertCharacter(),YSL_BEGIN::FetchSkipMapperFunc(),fixed_width,CHRLib::GetCountOf(),GetEnd(),YSLib::File::GetPtr(),max_width,nTextSize,YAssert , 以及 YB_LIKELY.

函数调用图:

size_t TextFileBuffer::GetPosition | ( | TextFileBuffer::Iterator | i | ) |

取迭代器对应的文本字节位置。

自从
  build 273

在文件 textmgr.cpp 第 211 行定义.

参考 BlockSize,CHRLib::ConvertCharacter(),YSL_BEGIN::FetchSkipMapperFunc(),ystdex::iterator_transformation::first(),fixed_width,YSLib::Text::TextFileBuffer::Iterator::GetBlockN(),CHRLib::GetCountOf(),GetEnd(),YSLib::Text::TextFileBuffer::Iterator::GetIndexN(),YSLib::File::GetPtr(),max_width,nTextSize,YAssert , 以及 YB_LIKELY.

函数调用图:

size_t YSLib::Text::TextFileBuffer::GetSize | ( |  | ) | const

inline

在文件 textmgr.h 第 174 行定义.

size_t YSLib::Text::TextFileBuffer::GetTextSize | ( |  | ) | const

inline

在文件 textmgr.h 第 175 行定义.

TextFileBuffer::BlockType & TextFileBuffer::operator[] | ( | size_t | idx | ) |

块随机访问。

自从
  build 273

在文件 textmgr.cpp 第 128 行定义.

参考 BlockSize,CHRLib::ConvertCharacter(),YSL_BEGIN::FetchMapperFunc(),fixed_width,CHRLib::GetCountOf(),YSLib::File::GetPtr(),Map,nBlock,nTextSize,YAssert,YB_LIKELY , 以及 YB_UNLIKELY.

函数调用图:

## 类成员变量说明

yconstexpr size_t YSLib::Text::TextFileBuffer::BlockSize = 2048U

static

默认文本区块大小。

自从
  build 273

在文件 textmgr.h 第 113 行定义.

参考自 GetIterator(),GetPosition() , 以及 operator[]().

TextFile& YSLib::Text::TextFileBuffer::File

protected

文本文件引用。

自从
  build 273

在文件 textmgr.h 第 120 行定义.

size_t YSLib::Text::TextFileBuffer::fixed_width

private

固定编码每字符的字节数。

注解
  变长编码为 1 。

自从
  build 273;

在文件 textmgr.h 第 143 行定义.

参考自 GetIterator(),GetPosition(),operator[]() , 以及 TextFileBuffer().

MapType YSLib::Text::TextFileBuffer::Map

protected

缓冲映射。

自从
  build 273

在文件 textmgr.h 第 135 行定义.

参考自 operator[]().

size_t YSLib::Text::TextFileBuffer::max_width

private

最大编码每字符的字节数。

自从
  build 273;

在文件 textmgr.h 第 148 行定义.

参考自 GetIterator(),GetPosition() , 以及 TextFileBuffer().

size_t YSLib::Text::TextFileBuffer::nBlock

protected

区块数。

自从
  build 273

在文件 textmgr.h 第 130 行定义.

参考自 GetEnd() , 以及 operator[]().

size_t YSLib::Text::TextFileBuffer::nTextSize

protected

文本大小。

自从
  build 273

在文件 textmgr.h 第 125 行定义.

参考自 GetIterator(),GetPosition() , 以及 operator[]().

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

- textmgr.h
- textmgr.cpp