Registry and conversion gateway for level formats. 更多...
#include <LevelFormat.h>
Public 成员函数 | |
| LevelFormatRegistry () | |
| Level format registry. | |
| LevelFormatRegistry (const LevelFormatRegistry &)=delete | |
| LevelFormatRegistry & | operator= (const LevelFormatRegistry &)=delete |
| LevelFormatRegistry (LevelFormatRegistry &&)=default | |
| Level format registry. | |
| LevelFormatRegistry & | operator= (LevelFormatRegistry &&)=default |
| Operator =. | |
| eve::Result< void > | registerFormat (std::unique_ptr< LevelFormat > format) |
| Registers format. | |
| int | getFormatCount () const |
| Returns the format count. | |
| std::string | getFormatId (int index) const |
| Returns the format id. | |
| std::string | detect (const std::string &path, const std::string &text) const |
| Detect. | |
| eve::Result< std::unique_ptr< LevelDocument > > | decode (const std::string &format, const std::string &text) const |
| Decode. | |
| eve::Result< std::string > | encode (const std::string &format, const LevelDocument &level) const |
| Encode. | |
| eve::Result< std::unique_ptr< LevelDocument > > | load (const std::string &path, const std::string &format={}) const |
| Loads . | |
| eve::Result< void > | save (const std::string &path, const LevelDocument &level, const std::string &format={}) const |
| Encode then atomically replace a file; failures preserve an existing destination. | |
详细描述
Registry and conversion gateway for level formats.
Own formats may be registered from C++ with registerFormat(). Built-ins are eve.level (version 1) and tiled.json (finite array-backed Tiled JSON maps). Unmodeled fields are owned by the document and preserved on export. Group, image, infinite and encoded layers are rejected instead of flattened/lost. All operations are synchronous on the document owner thread, without callbacks.
在文件 LevelFormat.h 第 42 行定义.
构造及析构函数说明
◆ LevelFormatRegistry() [1/3]
| eve::level_editing::LevelFormatRegistry::LevelFormatRegistry | ( | ) |
Level format registry.
在文件 LevelFormat.cpp 第 372 行定义.
◆ LevelFormatRegistry() [2/3]
|
delete |
◆ LevelFormatRegistry() [3/3]
|
default |
Level format registry.
成员函数说明
◆ decode()
| eve::Result< std::unique_ptr< LevelDocument > > eve::level_editing::LevelFormatRegistry::decode | ( | const std::string & | format, |
| const std::string & | text | ||
| ) | const |
Decode.
在文件 LevelFormat.cpp 第 404 行定义.
引用了 eve::Diagnostic::error(), f, t , 以及 eve::Unsupported.
被这些函数引用 load().
◆ detect()
| std::string eve::level_editing::LevelFormatRegistry::detect | ( | const std::string & | path, |
| const std::string & | text | ||
| ) | const |
◆ encode()
| eve::Result< std::string > eve::level_editing::LevelFormatRegistry::encode | ( | const std::string & | format, |
| const LevelDocument & | level | ||
| ) | const |
Encode.
在文件 LevelFormat.cpp 第 412 行定义.
引用了 d, eve::Diagnostic::error(), f, eve::Result< T >::failure() , 以及 eve::Unsupported.
被这些函数引用 save().
◆ getFormatCount()
|
inline |
Returns the format count.
在文件 LevelFormat.h 第 61 行定义.
◆ getFormatId()
| std::string eve::level_editing::LevelFormatRegistry::getFormatId | ( | int | index | ) | const |
Returns the format id.
在文件 LevelFormat.cpp 第 388 行定义.
◆ load()
| eve::Result< std::unique_ptr< LevelDocument > > eve::level_editing::LevelFormatRegistry::load | ( | const std::string & | path, |
| const std::string & | format = {} |
||
| ) | const |
Loads .
在文件 LevelFormat.cpp 第 419 行定义.
引用了 decode(), detect(), eve::Diagnostic::error(), f, id, eve::NotFound, p , 以及 s.
◆ operator=() [1/2]
|
delete |
◆ operator=() [2/2]
|
default |
Operator =.
◆ registerFormat()
| eve::Result< void > eve::level_editing::LevelFormatRegistry::registerFormat | ( | std::unique_ptr< LevelFormat > | format | ) |
Registers format.
在文件 LevelFormat.cpp 第 376 行定义.
引用了 eve::Applied, eve::Diagnostic::error(), f, eve::Result< T >::failure(), eve::InvalidArgument, eve::Status::success() , 以及 eve::Result< T >::success().
被这些函数引用 LevelFormatRegistry().
◆ save()
| eve::Result< void > eve::level_editing::LevelFormatRegistry::save | ( | const std::string & | path, |
| const LevelDocument & | level, | ||
| const std::string & | format = {} |
||
| ) | const |
Encode then atomically replace a file; failures preserve an existing destination.
- 参数
-
path Destination path; relative asset references are preserved verbatim. level Synchronously borrowed document, never retained or mutated. format Registered format, or infer it from the extension.
- 返回
- Structured encoding or filesystem failure, or successful replacement. @thread Document owner thread; no callbacks. This is not a power-loss durability guarantee.
在文件 LevelFormat.cpp 第 431 行定义.
引用了 eve::Applied, count, d, detect(), encode(), error, eve::Diagnostic::error(), f, eve::Failed, eve::Result< T >::failure(), id, p, path, sequence, eve::Status::success() , 以及 eve::Result< T >::success().
该类的文档由以下文件生成:
- src/modules/map/level/editing/LevelFormat.h
- src/modules/map/level/editing/LevelFormat.cpp