mirror of
https://github.com/zlgopen/awtk.git
synced 2025-05-08 19:44:45 +08:00
improve data readers
This commit is contained in:
parent
f8bbe318c9
commit
134d3a966d
@ -259,7 +259,6 @@ EXPORTS
|
||||
clip_board_destroy
|
||||
clip_board_set_text
|
||||
clip_board_get_text
|
||||
data_reader_asset_create
|
||||
dialog_highlighter_factory
|
||||
dialog_highlighter_factory_set
|
||||
dialog_highlighter_factory_create
|
||||
@ -1014,7 +1013,6 @@ EXPORTS
|
||||
data_reader_factory_register
|
||||
data_reader_factory_create_reader
|
||||
data_reader_factory_destroy
|
||||
data_reader_file_create
|
||||
data_reader_read
|
||||
data_reader_get_size
|
||||
data_reader_destroy
|
||||
@ -1025,7 +1023,6 @@ EXPORTS
|
||||
data_writer_factory_register
|
||||
data_writer_factory_create_writer
|
||||
data_writer_factory_destroy
|
||||
data_writer_file_create
|
||||
data_writer_write
|
||||
data_writer_destroy
|
||||
date_time_create
|
||||
@ -1341,6 +1338,7 @@ EXPORTS
|
||||
tk_strtol
|
||||
tk_strcpy
|
||||
tk_strncpy
|
||||
tk_strncpy_s
|
||||
tk_strdup
|
||||
tk_wstrdup
|
||||
tk_strndup
|
||||
@ -1484,6 +1482,8 @@ EXPORTS
|
||||
assets_manager_deinit
|
||||
assets_manager_destroy
|
||||
assets_manager_load_file
|
||||
data_reader_asset_create
|
||||
data_reader_asset_build_url
|
||||
wheel_event_cast
|
||||
wheel_event_init
|
||||
orientation_event_cast
|
||||
@ -1834,6 +1834,12 @@ EXPORTS
|
||||
lcd_mem_rgba8888_create_three_fb
|
||||
lcd_mem_special_create
|
||||
lcd_mono_create
|
||||
data_reader_file_create
|
||||
data_reader_mem_create
|
||||
data_reader_mem_build_url
|
||||
data_writer_file_create
|
||||
data_writer_wbuffer_create
|
||||
data_writer_wbuffer_build_url
|
||||
event_source_manager_default_create
|
||||
prop_change_event_cast
|
||||
prop_change_event_init
|
||||
|
@ -229,7 +229,6 @@ EXPORTS
|
||||
data_reader_factory_register
|
||||
data_reader_factory_create_reader
|
||||
data_reader_factory_destroy
|
||||
data_reader_file_create
|
||||
data_reader_read
|
||||
data_reader_get_size
|
||||
data_reader_destroy
|
||||
@ -240,7 +239,6 @@ EXPORTS
|
||||
data_writer_factory_register
|
||||
data_writer_factory_create_writer
|
||||
data_writer_factory_destroy
|
||||
data_writer_file_create
|
||||
data_writer_write
|
||||
data_writer_destroy
|
||||
date_time_create
|
||||
@ -556,6 +554,7 @@ EXPORTS
|
||||
tk_strtol
|
||||
tk_strcpy
|
||||
tk_strncpy
|
||||
tk_strncpy_s
|
||||
tk_strdup
|
||||
tk_wstrdup
|
||||
tk_strndup
|
||||
@ -731,6 +730,12 @@ EXPORTS
|
||||
conf_node_set_first_child
|
||||
conf_doc_load_ubjson
|
||||
conf_doc_save_ubjson
|
||||
data_reader_file_create
|
||||
data_reader_mem_create
|
||||
data_reader_mem_build_url
|
||||
data_writer_file_create
|
||||
data_writer_wbuffer_create
|
||||
data_writer_wbuffer_build_url
|
||||
event_source_manager_default_create
|
||||
prop_change_event_cast
|
||||
prop_change_event_init
|
||||
|
@ -1,12 +1,17 @@
|
||||
# 最新动态
|
||||
|
||||
2020/12/23
|
||||
* 完善文档。
|
||||
* 增加 data\_reade\r_mem。
|
||||
* 增加 data\_writer\_wbuffer。
|
||||
|
||||
2020/12/22
|
||||
* 增加FLOW资源类型。
|
||||
* 增加函数tk\_strncpy\_s。
|
||||
* data\_reader\_asset支持除data之外的其它资源类型。
|
||||
* 增加 FLOW 资源类型。
|
||||
* 增加函数 tk\_strncpy\_s。
|
||||
* data\_reader\_asset 支持除 data 之外的其它资源类型。
|
||||
* 修复圆角矩形 agge 填充下边的角的时候没有复位的问题(感谢智明提供补丁)
|
||||
* 修复加载 UI 比字库资源要早导致 UI 显示不正常的问题(感谢智明提供补丁)
|
||||
* 修复text_selector 控件在高度无法整除显示个数后导致偏移不正常的问题(感谢智明提供补丁)
|
||||
* 修复 text_selector 控件在高度无法整除显示个数后导致偏移不正常的问题(感谢智明提供补丁)
|
||||
|
||||
2020/12/21
|
||||
* 增加 slide\_view\_set\_active\_ex 以控制是否启用动画。
|
||||
|
@ -74,7 +74,7 @@ static data_reader_vtable_t s_data_reader_asset_vtable = {
|
||||
|
||||
data_reader_t* data_reader_asset_create(const char* assetname) {
|
||||
const char* p = NULL;
|
||||
char type[TK_NAME_LEN+1];
|
||||
char type[TK_NAME_LEN + 1];
|
||||
data_reader_asset_t* asset = NULL;
|
||||
const key_type_value_t* kv = NULL;
|
||||
assets_manager_t* am = assets_manager();
|
||||
@ -83,7 +83,7 @@ data_reader_t* data_reader_asset_create(const char* assetname) {
|
||||
return_value_if_fail(asset != NULL && am != NULL, NULL);
|
||||
|
||||
p = strchr(assetname, '/');
|
||||
if(p != NULL) {
|
||||
if (p != NULL) {
|
||||
tk_strncpy_s(type, sizeof(type), assetname, p - assetname);
|
||||
assetname = p + 1;
|
||||
} else {
|
||||
@ -102,3 +102,13 @@ data_reader_t* data_reader_asset_create(const char* assetname) {
|
||||
|
||||
return (data_reader_t*)asset;
|
||||
}
|
||||
|
||||
const char* data_reader_asset_build_url(const char* name, asset_type_t type,
|
||||
char url[MAX_PATH + 1]) {
|
||||
const key_type_value_t* kv = asset_type_find_by_value(type);
|
||||
return_value_if_fail(kv != NULL && name != NULL, NULL);
|
||||
|
||||
tk_snprintf(url, MAX_PATH, "asset://%s/%s", kv->name, name);
|
||||
|
||||
return url;
|
||||
}
|
||||
|
@ -22,19 +22,46 @@
|
||||
#ifndef TK_DATA_READER_ASSET_H
|
||||
#define TK_DATA_READER_ASSET_H
|
||||
|
||||
#include "tkc/asset_info.h"
|
||||
#include "tkc/data_reader.h"
|
||||
|
||||
BEGIN_C_DECLS
|
||||
/**
|
||||
* @class data_reader_asset_t
|
||||
* @parent data_reader_t
|
||||
* @annotation ["fake"]
|
||||
* 基于资源实现的 data_reader。通过 data_reader_factory 创建 reader 时,URL的格式如下(请用函数data_reader_asset_build_url生成):
|
||||
*
|
||||
* ```
|
||||
* asset://type/name
|
||||
* ```
|
||||
*/
|
||||
|
||||
/**
|
||||
* @method data_reader_asset_create
|
||||
* 创建基于asset的data reader。
|
||||
*
|
||||
* > 不要直接调用,而是注册到 data\_reader\_factory后,通过data\_reader\_factory调用。
|
||||
* @annotation ["constructor"]
|
||||
* @param {const char*} assetname 资源的名称。
|
||||
*
|
||||
* @return {data_reader_t*} 返回data reader对象。
|
||||
*/
|
||||
data_reader_t* data_reader_asset_create(const char* assetname);
|
||||
|
||||
/**
|
||||
* @method data_reader_asset_build_url
|
||||
* 构造内存URL。
|
||||
* @annotation ["static"]
|
||||
*
|
||||
* @param {const char*} name 资源的名称。
|
||||
* @param {asset_type_t} type 资源的类型。
|
||||
* @param {char*} url 生成的URL。
|
||||
*
|
||||
* @return {const char*} 返回URL。
|
||||
*/
|
||||
const char* data_reader_asset_build_url(const char* name, asset_type_t type, char url[MAX_PATH + 1]);
|
||||
|
||||
#define DATA_READER_ASSET(reader) ((data_reader_t*)(reader))
|
||||
|
||||
END_C_DECLS
|
||||
|
@ -26,17 +26,29 @@
|
||||
|
||||
BEGIN_C_DECLS
|
||||
|
||||
/**
|
||||
* @class data_reader_file_t
|
||||
* @parent data_reader_t
|
||||
* @annotation ["fake"]
|
||||
* 基于文件实现的 data_reader。通过 data_reader_factory 创建 reader 时,URL的格式如下(请用函数data_reader_file_build_url生成):
|
||||
*
|
||||
* ```
|
||||
* file://filename
|
||||
* ```
|
||||
*/
|
||||
|
||||
/**
|
||||
* @method data_reader_file_create
|
||||
* 创建基于文件的data reader。
|
||||
* > 不要直接调用,而是注册到 data\_reader\_factory后,通过data\_reader\_factory调用。
|
||||
* @annotation ["constructor"]
|
||||
*
|
||||
* @param {const char*} filename 文件名。
|
||||
*
|
||||
* @return {data_reader_t*} 返回data reader对象。
|
||||
*/
|
||||
data_reader_t* data_reader_file_create(const char* filename);
|
||||
|
||||
#define DATA_READER_FILE(reader) ((data_reader_t*)(reader))
|
||||
|
||||
END_C_DECLS
|
||||
|
||||
#endif /*TK_DATA_READER_FILE_H*/
|
||||
|
@ -86,9 +86,9 @@ data_reader_t* data_reader_mem_create(const char* memname) {
|
||||
}
|
||||
|
||||
const char* data_reader_mem_build_url(const void* buffer, uint32_t size,
|
||||
char url[TK_NAME_LEN + 1]) {
|
||||
char url[MAX_PATH + 1]) {
|
||||
return_value_if_fail(buffer != NULL, NULL);
|
||||
tk_snprintf(url, TK_NAME_LEN, "mem://%p:%u", buffer, size);
|
||||
tk_snprintf(url, MAX_PATH, "mem://%p:%u", buffer, size);
|
||||
|
||||
return url;
|
||||
}
|
||||
|
@ -26,11 +26,24 @@
|
||||
#include "tkc/data_reader.h"
|
||||
|
||||
BEGIN_C_DECLS
|
||||
/**
|
||||
* @class data_reader_mem_t
|
||||
* @parent data_reader_t
|
||||
* @annotation ["fake"]
|
||||
* 基于内存实现的 data_reader。通过 data_reader_factory 创建 reader 时,URL的格式如下(请用函数data_reader_mem_build_url生成):
|
||||
*
|
||||
* ```
|
||||
* mem://addr:size
|
||||
* ```
|
||||
*/
|
||||
|
||||
/**
|
||||
* @method data_reader_mem_create
|
||||
* 创建基于文件的data reader。
|
||||
* @param {const char*} memname 文件名。
|
||||
* 创建基于内存的 data reader。
|
||||
*
|
||||
* > 不要直接调用,而是注册到 data\_reader\_factory后,通过data\_reader\_factory调用。
|
||||
* @annotation ["constructor"]
|
||||
* @param {const char*} memname 内存地址和大小的字符串格式表示 。
|
||||
*
|
||||
* @return {data_reader_t*} 返回data reader对象。
|
||||
*/
|
||||
@ -38,14 +51,16 @@ data_reader_t* data_reader_mem_create(const char* memname);
|
||||
|
||||
/**
|
||||
* @method data_reader_mem_build_url
|
||||
*
|
||||
* @param {mem_t*} mem pointer to mem 。
|
||||
* @param {uint32_t} size memory size
|
||||
* @param {char*} url url.
|
||||
* 构造内存URL。
|
||||
* @annotation ["static"]
|
||||
*
|
||||
* @param {mem_t*} mem 内存的地址。
|
||||
* @param {uint32_t} size 内存的长度。
|
||||
* @param {char*} url 生成的URL。
|
||||
*
|
||||
* @return {const char*} 返回URL。
|
||||
*/
|
||||
const char* data_reader_mem_build_url(const void* buffer, uint32_t size, char url[TK_NAME_LEN + 1]);
|
||||
const char* data_reader_mem_build_url(const void* buffer, uint32_t size, char url[MAX_PATH + 1]);
|
||||
|
||||
#define DATA_READER_MEM(reader) ((data_reader_t*)(reader))
|
||||
|
||||
|
@ -26,17 +26,30 @@
|
||||
|
||||
BEGIN_C_DECLS
|
||||
|
||||
/**
|
||||
* @class data_writer_file_t
|
||||
* @parent data_writer_t
|
||||
* @annotation ["fake"]
|
||||
* 基于文件实现的 data_writer。通过 data_writer_factory 创建 writer 时,URL的格式如下:
|
||||
*
|
||||
* ```
|
||||
* file://filename
|
||||
* ```
|
||||
*/
|
||||
|
||||
/**
|
||||
* @method data_writer_file_create
|
||||
* 创建基于文件的data writer。
|
||||
*
|
||||
* > 不要直接调用,而是注册到 data\_writer\_factory后,通过data\_writer\_factory调用
|
||||
* @annotation ["constructor"]
|
||||
*
|
||||
* @param {const char*} filename 文件名。
|
||||
*
|
||||
* @return {data_writer_t*} 返回data writer对象。
|
||||
*/
|
||||
data_writer_t* data_writer_file_create(const char* filename);
|
||||
|
||||
#define DATA_WRITER_FILE(writer) ((data_writer_t*)(writer))
|
||||
|
||||
END_C_DECLS
|
||||
|
||||
#endif /*TK_DATA_WRITER_FILE_H*/
|
||||
|
@ -29,12 +29,12 @@ typedef struct _data_writer_wbuffer_t {
|
||||
} data_writer_wbuffer_t;
|
||||
|
||||
static int32_t data_writer_wbuffer_write(data_writer_t* writer, uint64_t offset, const void* data,
|
||||
uint32_t size) {
|
||||
uint32_t size) {
|
||||
data_writer_wbuffer_t* wbuffer = (data_writer_wbuffer_t*)writer;
|
||||
return_value_if_fail(wbuffer_extend_capacity(wbuffer->wbuffer, offset + size) == RET_OK, 0);
|
||||
|
||||
wbuffer->wbuffer->cursor = offset;
|
||||
|
||||
|
||||
return wbuffer_write_binary(wbuffer->wbuffer, data, size) == RET_OK ? size : 0;
|
||||
}
|
||||
|
||||
@ -66,9 +66,9 @@ data_writer_t* data_writer_wbuffer_create(const char* wbuffername) {
|
||||
return (data_writer_t*)wbuffer;
|
||||
}
|
||||
|
||||
const char* data_writer_wbuffer_build_url(wbuffer_t* buffer, char url[TK_NAME_LEN+1]) {
|
||||
const char* data_writer_wbuffer_build_url(wbuffer_t* buffer, char url[MAX_PATH + 1]) {
|
||||
return_value_if_fail(buffer != NULL, NULL);
|
||||
tk_snprintf(url, TK_NAME_LEN, "wbuffer://%p", buffer);
|
||||
tk_snprintf(url, MAX_PATH, "wbuffer://%p", buffer);
|
||||
|
||||
return url;
|
||||
}
|
||||
|
@ -27,11 +27,24 @@
|
||||
#include "tkc/data_writer.h"
|
||||
|
||||
BEGIN_C_DECLS
|
||||
/**
|
||||
* @class data_writer_wbuffer_t
|
||||
* @parent data_writer_t
|
||||
* @annotation ["fake"]
|
||||
* 基于内存实现的 data_writer。通过 data_writer_factory 创建 writer 时,URL的格式如下(请用函数data_writer_wbuffer_build_url生成):
|
||||
*
|
||||
* ```
|
||||
* wbuffer://addr
|
||||
* ```
|
||||
*/
|
||||
|
||||
/**
|
||||
* @method data_writer_wbuffer_create
|
||||
* 创建基于wbuffer的data writer。
|
||||
* @param {const char*} wbuffer_name pointer to wbuffer 。
|
||||
*
|
||||
* > 不要直接调用,而是注册到 data\_writer\_factory后,通过data\_writer\_factory调用
|
||||
* @annotation ["constructor"]
|
||||
* @param {const char*} wbuffer_name wbuffer地址的字符串格式表示 。
|
||||
*
|
||||
* @return {data_writer_t*} 返回data writer对象。
|
||||
*/
|
||||
@ -39,13 +52,15 @@ data_writer_t* data_writer_wbuffer_create(const char* wbuffer_name);
|
||||
|
||||
/**
|
||||
* @method data_writer_wbuffer_build_url
|
||||
*
|
||||
* @param {wbuffer_t*} wbuffer pointer to wbuffer 。
|
||||
* @param {char*} url url.
|
||||
* 构造wbuffer的URL。
|
||||
* @annotation ["static"]
|
||||
*
|
||||
* @param {wbuffer_t*} wbuffer wbuffer对象。
|
||||
* @param {char*} url 生成的URL。
|
||||
*
|
||||
* @return {const char*} 返回URL。
|
||||
*/
|
||||
const char* data_writer_wbuffer_build_url(wbuffer_t* buffer, char url[TK_NAME_LEN+1]);
|
||||
const char* data_writer_wbuffer_build_url(wbuffer_t* buffer, char url[MAX_PATH+1]);
|
||||
|
||||
#define DATA_WRITER_WBUFFER(writer) ((data_writer_t*)(writer))
|
||||
|
||||
|
@ -25,12 +25,14 @@ TEST(DataReaderAsset, basic) {
|
||||
TEST(DataReaderAsset, data) {
|
||||
char data[256];
|
||||
uint32_t size = 0;
|
||||
char url[MAX_PATH+1];
|
||||
data_reader_t* reader = NULL;
|
||||
data_reader_factory_t* f = data_reader_factory_create();
|
||||
|
||||
ASSERT_EQ(data_reader_factory_register(f, "asset", data_reader_asset_create), RET_OK);
|
||||
|
||||
reader = data_reader_factory_create_reader(f, "asset://data/test.json");
|
||||
data_reader_asset_build_url("test.json", ASSET_TYPE_DATA, url);
|
||||
reader = data_reader_factory_create_reader(f, url);
|
||||
ASSERT_EQ(reader != NULL, true);
|
||||
|
||||
memset(data, 0x00, sizeof(data));
|
||||
@ -45,12 +47,14 @@ TEST(DataReaderAsset, data) {
|
||||
TEST(DataReaderAsset, ui) {
|
||||
char data[32];
|
||||
uint32_t size = 0;
|
||||
char url[MAX_PATH+1];
|
||||
data_reader_t* reader = NULL;
|
||||
data_reader_factory_t* f = data_reader_factory_create();
|
||||
|
||||
ASSERT_EQ(data_reader_factory_register(f, "asset", data_reader_asset_create), RET_OK);
|
||||
|
||||
reader = data_reader_factory_create_reader(f, "asset://ui/main");
|
||||
data_reader_asset_build_url("main", ASSET_TYPE_UI, url);
|
||||
reader = data_reader_factory_create_reader(f, url);
|
||||
ASSERT_EQ(reader != NULL, true);
|
||||
|
||||
memset(data, 0x00, sizeof(data));
|
||||
@ -65,12 +69,14 @@ TEST(DataReaderAsset, ui) {
|
||||
TEST(DataReaderAsset, style) {
|
||||
char data[32];
|
||||
uint32_t size = 0;
|
||||
char url[MAX_PATH+1];
|
||||
data_reader_t* reader = NULL;
|
||||
data_reader_factory_t* f = data_reader_factory_create();
|
||||
|
||||
ASSERT_EQ(data_reader_factory_register(f, "asset", data_reader_asset_create), RET_OK);
|
||||
|
||||
reader = data_reader_factory_create_reader(f, "asset://style/default");
|
||||
data_reader_asset_build_url("default", ASSET_TYPE_STYLE, url);
|
||||
reader = data_reader_factory_create_reader(f, url);
|
||||
ASSERT_EQ(reader != NULL, true);
|
||||
|
||||
memset(data, 0x00, sizeof(data));
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
TEST(DataReaderMem, basic) {
|
||||
char buffer[32];
|
||||
char url[TK_NAME_LEN + 1];
|
||||
char url[MAX_PATH + 1];
|
||||
const char* data = "hello world";
|
||||
data_reader_t* reader = NULL;
|
||||
data_reader_factory_t* f = data_reader_factory_create();
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
TEST(DataWriterWbuffer, wbuffer) {
|
||||
wbuffer_t wb;
|
||||
char url[TK_NAME_LEN + 1];
|
||||
char url[MAX_PATH + 1];
|
||||
data_writer_t* writer = NULL;
|
||||
data_writer_factory_t* f = data_writer_factory_create();
|
||||
|
||||
|
@ -6873,22 +6873,6 @@
|
||||
"type": "const char*",
|
||||
"desc": "返回文本数据。"
|
||||
}
|
||||
},
|
||||
{
|
||||
"params": [
|
||||
{
|
||||
"type": "const char*",
|
||||
"name": "assetname",
|
||||
"desc": "资源的名称。"
|
||||
}
|
||||
],
|
||||
"annotation": {},
|
||||
"desc": "创建基于asset的data reader。",
|
||||
"name": "data_reader_asset_create",
|
||||
"return": {
|
||||
"type": "data_reader_t*",
|
||||
"desc": "返回data reader对象。"
|
||||
}
|
||||
}
|
||||
],
|
||||
"events": [],
|
||||
@ -26933,6 +26917,10 @@
|
||||
"desc": "JS等脚本资源。",
|
||||
"name": "ASSET_TYPE_SCRIPT"
|
||||
},
|
||||
{
|
||||
"desc": "流图资源。",
|
||||
"name": "ASSET_TYPE_FLOW"
|
||||
},
|
||||
{
|
||||
"desc": "其它数据资源。",
|
||||
"name": "ASSET_TYPE_DATA"
|
||||
@ -29172,22 +29160,6 @@
|
||||
"type": "ret_t",
|
||||
"desc": "返回RET_OK表示成功,否则表示失败。"
|
||||
}
|
||||
},
|
||||
{
|
||||
"params": [
|
||||
{
|
||||
"type": "const char*",
|
||||
"name": "filename",
|
||||
"desc": "文件名。"
|
||||
}
|
||||
],
|
||||
"annotation": {},
|
||||
"desc": "创建基于文件的data reader。",
|
||||
"name": "data_reader_file_create",
|
||||
"return": {
|
||||
"type": "data_reader_t*",
|
||||
"desc": "返回data reader对象。"
|
||||
}
|
||||
}
|
||||
],
|
||||
"events": [],
|
||||
@ -29399,22 +29371,6 @@
|
||||
"type": "ret_t",
|
||||
"desc": "返回RET_OK表示成功,否则表示失败。"
|
||||
}
|
||||
},
|
||||
{
|
||||
"params": [
|
||||
{
|
||||
"type": "const char*",
|
||||
"name": "filename",
|
||||
"desc": "文件名。"
|
||||
}
|
||||
],
|
||||
"annotation": {},
|
||||
"desc": "创建基于文件的data writer。",
|
||||
"name": "data_writer_file_create",
|
||||
"return": {
|
||||
"type": "data_writer_t*",
|
||||
"desc": "返回data writer对象。"
|
||||
}
|
||||
}
|
||||
],
|
||||
"events": [],
|
||||
@ -37678,7 +37634,7 @@
|
||||
{
|
||||
"type": "const char*",
|
||||
"name": "src",
|
||||
"desc": "原字符串。"
|
||||
"desc": "源字符串。"
|
||||
},
|
||||
{
|
||||
"type": "size_t",
|
||||
@ -37694,6 +37650,37 @@
|
||||
"desc": "返回目标字符串。"
|
||||
}
|
||||
},
|
||||
{
|
||||
"params": [
|
||||
{
|
||||
"type": "char*",
|
||||
"name": "dst",
|
||||
"desc": "目标字符串。"
|
||||
},
|
||||
{
|
||||
"type": "size_t",
|
||||
"name": "dst_len",
|
||||
"desc": "目标字符串内存长度。"
|
||||
},
|
||||
{
|
||||
"type": "const char*",
|
||||
"name": "src",
|
||||
"desc": "源字符串。"
|
||||
},
|
||||
{
|
||||
"type": "size_t",
|
||||
"name": "src_len",
|
||||
"desc": "要复制的字符串个数。"
|
||||
}
|
||||
],
|
||||
"annotation": {},
|
||||
"desc": "将src所指向的字符串复制到dst,最多复制min(dst_len-1, src_len)个字符串,并在[len]位置添加'\\0'。",
|
||||
"name": "tk_strncpy_s",
|
||||
"return": {
|
||||
"type": "char*",
|
||||
"desc": "返回目标字符串。"
|
||||
}
|
||||
},
|
||||
{
|
||||
"params": [
|
||||
{
|
||||
@ -41436,6 +41423,67 @@
|
||||
},
|
||||
"level": 2
|
||||
},
|
||||
{
|
||||
"type": "class",
|
||||
"methods": [
|
||||
{
|
||||
"params": [
|
||||
{
|
||||
"type": "const char*",
|
||||
"name": "assetname",
|
||||
"desc": "资源的名称。"
|
||||
}
|
||||
],
|
||||
"annotation": {
|
||||
"constructor": true
|
||||
},
|
||||
"desc": "创建基于asset的data reader。\n\n> 不要直接调用,而是注册到 data\\_reader\\_factory后,通过data\\_reader\\_factory调用。",
|
||||
"name": "data_reader_asset_create",
|
||||
"return": {
|
||||
"type": "data_reader_t*",
|
||||
"desc": "返回data reader对象。"
|
||||
}
|
||||
},
|
||||
{
|
||||
"params": [
|
||||
{
|
||||
"type": "const char*",
|
||||
"name": "name",
|
||||
"desc": "资源的名称。"
|
||||
},
|
||||
{
|
||||
"type": "asset_type_t",
|
||||
"name": "type",
|
||||
"desc": "资源的类型。"
|
||||
},
|
||||
{
|
||||
"type": "char*",
|
||||
"name": "url",
|
||||
"desc": "生成的URL。"
|
||||
}
|
||||
],
|
||||
"annotation": {
|
||||
"static": true
|
||||
},
|
||||
"desc": "构造内存URL。",
|
||||
"name": "data_reader_asset_build_url",
|
||||
"return": {
|
||||
"type": "const char*",
|
||||
"desc": "返回URL。"
|
||||
}
|
||||
}
|
||||
],
|
||||
"events": [],
|
||||
"properties": [],
|
||||
"header": "base/data_reader_asset.h",
|
||||
"desc": "基于资源实现的 data_reader。通过 data_reader_factory 创建 reader 时,URL的格式如下(请用函数data_reader_asset_build_url生成):\n\n```\nasset://type/name\n```",
|
||||
"name": "data_reader_asset_t",
|
||||
"parent": "data_reader_t",
|
||||
"annotation": {
|
||||
"fake": true
|
||||
},
|
||||
"level": 2
|
||||
},
|
||||
{
|
||||
"type": "class",
|
||||
"methods": [
|
||||
@ -51037,7 +51085,7 @@
|
||||
"annotation": {
|
||||
"scriptable": true
|
||||
},
|
||||
"desc": "设置当前页的序号。",
|
||||
"desc": "设置当前页的序号(默认启用动画)。",
|
||||
"name": "slide_view_set_active",
|
||||
"return": {
|
||||
"type": "ret_t",
|
||||
@ -51059,7 +51107,7 @@
|
||||
{
|
||||
"type": "bool_t",
|
||||
"name": "animate",
|
||||
"desc": "enable animation."
|
||||
"desc": "是否启用动画。"
|
||||
}
|
||||
],
|
||||
"annotation": {
|
||||
@ -51809,9 +51857,9 @@
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "localize_options",
|
||||
"desc": "是否本地化(翻译)选项(缺省为FALSE)。",
|
||||
"type": "bool_t",
|
||||
"name": "yspeed_scale",
|
||||
"desc": "y偏移速度比例。",
|
||||
"type": "float_t",
|
||||
"annotation": {
|
||||
"set_prop": true,
|
||||
"get_prop": true,
|
||||
@ -51822,9 +51870,9 @@
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "yspeed_scale",
|
||||
"desc": "y偏移速度比例。",
|
||||
"type": "float_t",
|
||||
"name": "localize_options",
|
||||
"desc": "是否本地化(翻译)选项(缺省为FALSE)。",
|
||||
"type": "bool_t",
|
||||
"annotation": {
|
||||
"set_prop": true,
|
||||
"get_prop": true,
|
||||
@ -53766,6 +53814,189 @@
|
||||
"parent": "lcd_t",
|
||||
"level": 2
|
||||
},
|
||||
{
|
||||
"type": "class",
|
||||
"methods": [
|
||||
{
|
||||
"params": [
|
||||
{
|
||||
"type": "const char*",
|
||||
"name": "filename",
|
||||
"desc": "文件名。"
|
||||
}
|
||||
],
|
||||
"annotation": {
|
||||
"constructor": true
|
||||
},
|
||||
"desc": "创建基于文件的data reader。\n> 不要直接调用,而是注册到 data\\_reader\\_factory后,通过data\\_reader\\_factory调用。",
|
||||
"name": "data_reader_file_create",
|
||||
"return": {
|
||||
"type": "data_reader_t*",
|
||||
"desc": "返回data reader对象。"
|
||||
}
|
||||
}
|
||||
],
|
||||
"events": [],
|
||||
"properties": [],
|
||||
"header": "tkc/data_reader_file.h",
|
||||
"desc": "基于文件实现的 data_reader。通过 data_reader_factory 创建 reader 时,URL的格式如下(请用函数data_reader_file_build_url生成):\n\n```\nfile://filename\n```",
|
||||
"name": "data_reader_file_t",
|
||||
"parent": "data_reader_t",
|
||||
"annotation": {
|
||||
"fake": true
|
||||
},
|
||||
"level": 2
|
||||
},
|
||||
{
|
||||
"type": "class",
|
||||
"methods": [
|
||||
{
|
||||
"params": [
|
||||
{
|
||||
"type": "const char*",
|
||||
"name": "memname",
|
||||
"desc": "内存地址和大小的字符串格式表示 。"
|
||||
}
|
||||
],
|
||||
"annotation": {
|
||||
"constructor": true
|
||||
},
|
||||
"desc": "创建基于内存的 data reader。\n\n> 不要直接调用,而是注册到 data\\_reader\\_factory后,通过data\\_reader\\_factory调用。",
|
||||
"name": "data_reader_mem_create",
|
||||
"return": {
|
||||
"type": "data_reader_t*",
|
||||
"desc": "返回data reader对象。"
|
||||
}
|
||||
},
|
||||
{
|
||||
"params": [
|
||||
{
|
||||
"type": "mem_t*",
|
||||
"name": "mem",
|
||||
"desc": "内存的地址。"
|
||||
},
|
||||
{
|
||||
"type": "uint32_t",
|
||||
"name": "size",
|
||||
"desc": "内存的长度。"
|
||||
},
|
||||
{
|
||||
"type": "char*",
|
||||
"name": "url",
|
||||
"desc": "生成的URL。"
|
||||
}
|
||||
],
|
||||
"annotation": {
|
||||
"static": true
|
||||
},
|
||||
"desc": "构造内存URL。",
|
||||
"name": "data_reader_mem_build_url",
|
||||
"return": {
|
||||
"type": "const char*",
|
||||
"desc": "返回URL。"
|
||||
}
|
||||
}
|
||||
],
|
||||
"events": [],
|
||||
"properties": [],
|
||||
"header": "tkc/data_reader_mem.h",
|
||||
"desc": "基于内存实现的 data_reader。通过 data_reader_factory 创建 reader 时,URL的格式如下(请用函数data_reader_mem_build_url生成):\n\n```\nmem://addr:size\n```",
|
||||
"name": "data_reader_mem_t",
|
||||
"parent": "data_reader_t",
|
||||
"annotation": {
|
||||
"fake": true
|
||||
},
|
||||
"level": 2
|
||||
},
|
||||
{
|
||||
"type": "class",
|
||||
"methods": [
|
||||
{
|
||||
"params": [
|
||||
{
|
||||
"type": "const char*",
|
||||
"name": "filename",
|
||||
"desc": "文件名。"
|
||||
}
|
||||
],
|
||||
"annotation": {
|
||||
"constructor": true
|
||||
},
|
||||
"desc": "创建基于文件的data writer。\n\n> 不要直接调用,而是注册到 data\\_writer\\_factory后,通过data\\_writer\\_factory调用",
|
||||
"name": "data_writer_file_create",
|
||||
"return": {
|
||||
"type": "data_writer_t*",
|
||||
"desc": "返回data writer对象。"
|
||||
}
|
||||
}
|
||||
],
|
||||
"events": [],
|
||||
"properties": [],
|
||||
"header": "tkc/data_writer_file.h",
|
||||
"desc": "基于文件实现的 data_writer。通过 data_writer_factory 创建 writer 时,URL的格式如下:\n\n```\nfile://filename\n```",
|
||||
"name": "data_writer_file_t",
|
||||
"parent": "data_writer_t",
|
||||
"annotation": {
|
||||
"fake": true
|
||||
},
|
||||
"level": 2
|
||||
},
|
||||
{
|
||||
"type": "class",
|
||||
"methods": [
|
||||
{
|
||||
"params": [
|
||||
{
|
||||
"type": "const char*",
|
||||
"name": "wbuffer_name",
|
||||
"desc": "wbuffer地址的字符串格式表示 。"
|
||||
}
|
||||
],
|
||||
"annotation": {
|
||||
"constructor": true
|
||||
},
|
||||
"desc": "创建基于wbuffer的data writer。\n\n> 不要直接调用,而是注册到 data\\_writer\\_factory后,通过data\\_writer\\_factory调用",
|
||||
"name": "data_writer_wbuffer_create",
|
||||
"return": {
|
||||
"type": "data_writer_t*",
|
||||
"desc": "返回data writer对象。"
|
||||
}
|
||||
},
|
||||
{
|
||||
"params": [
|
||||
{
|
||||
"type": "wbuffer_t*",
|
||||
"name": "wbuffer",
|
||||
"desc": "wbuffer对象。"
|
||||
},
|
||||
{
|
||||
"type": "char*",
|
||||
"name": "url",
|
||||
"desc": "生成的URL。"
|
||||
}
|
||||
],
|
||||
"annotation": {
|
||||
"static": true
|
||||
},
|
||||
"desc": "构造wbuffer的URL。",
|
||||
"name": "data_writer_wbuffer_build_url",
|
||||
"return": {
|
||||
"type": "const char*",
|
||||
"desc": "返回URL。"
|
||||
}
|
||||
}
|
||||
],
|
||||
"events": [],
|
||||
"properties": [],
|
||||
"header": "tkc/data_writer_wbuffer.h",
|
||||
"desc": "基于内存实现的 data_writer。通过 data_writer_factory 创建 writer 时,URL的格式如下(请用函数data_writer_wbuffer_build_url生成):\n\n```\nwbuffer://addr\n```",
|
||||
"name": "data_writer_wbuffer_t",
|
||||
"parent": "data_writer_t",
|
||||
"annotation": {
|
||||
"fake": true
|
||||
},
|
||||
"level": 2
|
||||
},
|
||||
{
|
||||
"type": "class",
|
||||
"methods": [
|
||||
|
@ -3666,6 +3666,10 @@
|
||||
"desc": "JS等脚本资源。",
|
||||
"name": "ASSET_TYPE_SCRIPT"
|
||||
},
|
||||
{
|
||||
"desc": "流图资源。",
|
||||
"name": "ASSET_TYPE_FLOW"
|
||||
},
|
||||
{
|
||||
"desc": "其它数据资源。",
|
||||
"name": "ASSET_TYPE_DATA"
|
||||
@ -5905,22 +5909,6 @@
|
||||
"type": "ret_t",
|
||||
"desc": "返回RET_OK表示成功,否则表示失败。"
|
||||
}
|
||||
},
|
||||
{
|
||||
"params": [
|
||||
{
|
||||
"type": "const char*",
|
||||
"name": "filename",
|
||||
"desc": "文件名。"
|
||||
}
|
||||
],
|
||||
"annotation": {},
|
||||
"desc": "创建基于文件的data reader。",
|
||||
"name": "data_reader_file_create",
|
||||
"return": {
|
||||
"type": "data_reader_t*",
|
||||
"desc": "返回data reader对象。"
|
||||
}
|
||||
}
|
||||
],
|
||||
"events": [],
|
||||
@ -6132,22 +6120,6 @@
|
||||
"type": "ret_t",
|
||||
"desc": "返回RET_OK表示成功,否则表示失败。"
|
||||
}
|
||||
},
|
||||
{
|
||||
"params": [
|
||||
{
|
||||
"type": "const char*",
|
||||
"name": "filename",
|
||||
"desc": "文件名。"
|
||||
}
|
||||
],
|
||||
"annotation": {},
|
||||
"desc": "创建基于文件的data writer。",
|
||||
"name": "data_writer_file_create",
|
||||
"return": {
|
||||
"type": "data_writer_t*",
|
||||
"desc": "返回data writer对象。"
|
||||
}
|
||||
}
|
||||
],
|
||||
"events": [],
|
||||
@ -14476,7 +14448,7 @@
|
||||
{
|
||||
"type": "const char*",
|
||||
"name": "src",
|
||||
"desc": "原字符串。"
|
||||
"desc": "源字符串。"
|
||||
},
|
||||
{
|
||||
"type": "size_t",
|
||||
@ -14492,6 +14464,37 @@
|
||||
"desc": "返回目标字符串。"
|
||||
}
|
||||
},
|
||||
{
|
||||
"params": [
|
||||
{
|
||||
"type": "char*",
|
||||
"name": "dst",
|
||||
"desc": "目标字符串。"
|
||||
},
|
||||
{
|
||||
"type": "size_t",
|
||||
"name": "dst_len",
|
||||
"desc": "目标字符串内存长度。"
|
||||
},
|
||||
{
|
||||
"type": "const char*",
|
||||
"name": "src",
|
||||
"desc": "源字符串。"
|
||||
},
|
||||
{
|
||||
"type": "size_t",
|
||||
"name": "src_len",
|
||||
"desc": "要复制的字符串个数。"
|
||||
}
|
||||
],
|
||||
"annotation": {},
|
||||
"desc": "将src所指向的字符串复制到dst,最多复制min(dst_len-1, src_len)个字符串,并在[len]位置添加'\\0'。",
|
||||
"name": "tk_strncpy_s",
|
||||
"return": {
|
||||
"type": "char*",
|
||||
"desc": "返回目标字符串。"
|
||||
}
|
||||
},
|
||||
{
|
||||
"params": [
|
||||
{
|
||||
@ -19018,6 +19021,189 @@
|
||||
"header": "conf_io/conf_ubjson.h",
|
||||
"level": 1
|
||||
},
|
||||
{
|
||||
"type": "class",
|
||||
"methods": [
|
||||
{
|
||||
"params": [
|
||||
{
|
||||
"type": "const char*",
|
||||
"name": "filename",
|
||||
"desc": "文件名。"
|
||||
}
|
||||
],
|
||||
"annotation": {
|
||||
"constructor": true
|
||||
},
|
||||
"desc": "创建基于文件的data reader。\n> 不要直接调用,而是注册到 data\\_reader\\_factory后,通过data\\_reader\\_factory调用。",
|
||||
"name": "data_reader_file_create",
|
||||
"return": {
|
||||
"type": "data_reader_t*",
|
||||
"desc": "返回data reader对象。"
|
||||
}
|
||||
}
|
||||
],
|
||||
"events": [],
|
||||
"properties": [],
|
||||
"header": "tkc/data_reader_file.h",
|
||||
"desc": "基于文件实现的 data_reader。通过 data_reader_factory 创建 reader 时,URL的格式如下(请用函数data_reader_file_build_url生成):\n\n```\nfile://filename\n```",
|
||||
"name": "data_reader_file_t",
|
||||
"parent": "data_reader_t",
|
||||
"annotation": {
|
||||
"fake": true
|
||||
},
|
||||
"level": 2
|
||||
},
|
||||
{
|
||||
"type": "class",
|
||||
"methods": [
|
||||
{
|
||||
"params": [
|
||||
{
|
||||
"type": "const char*",
|
||||
"name": "memname",
|
||||
"desc": "内存地址和大小的字符串格式表示 。"
|
||||
}
|
||||
],
|
||||
"annotation": {
|
||||
"constructor": true
|
||||
},
|
||||
"desc": "创建基于内存的 data reader。\n\n> 不要直接调用,而是注册到 data\\_reader\\_factory后,通过data\\_reader\\_factory调用。",
|
||||
"name": "data_reader_mem_create",
|
||||
"return": {
|
||||
"type": "data_reader_t*",
|
||||
"desc": "返回data reader对象。"
|
||||
}
|
||||
},
|
||||
{
|
||||
"params": [
|
||||
{
|
||||
"type": "mem_t*",
|
||||
"name": "mem",
|
||||
"desc": "内存的地址。"
|
||||
},
|
||||
{
|
||||
"type": "uint32_t",
|
||||
"name": "size",
|
||||
"desc": "内存的长度。"
|
||||
},
|
||||
{
|
||||
"type": "char*",
|
||||
"name": "url",
|
||||
"desc": "生成的URL。"
|
||||
}
|
||||
],
|
||||
"annotation": {
|
||||
"static": true
|
||||
},
|
||||
"desc": "构造内存URL。",
|
||||
"name": "data_reader_mem_build_url",
|
||||
"return": {
|
||||
"type": "const char*",
|
||||
"desc": "返回URL。"
|
||||
}
|
||||
}
|
||||
],
|
||||
"events": [],
|
||||
"properties": [],
|
||||
"header": "tkc/data_reader_mem.h",
|
||||
"desc": "基于内存实现的 data_reader。通过 data_reader_factory 创建 reader 时,URL的格式如下(请用函数data_reader_mem_build_url生成):\n\n```\nmem://addr:size\n```",
|
||||
"name": "data_reader_mem_t",
|
||||
"parent": "data_reader_t",
|
||||
"annotation": {
|
||||
"fake": true
|
||||
},
|
||||
"level": 2
|
||||
},
|
||||
{
|
||||
"type": "class",
|
||||
"methods": [
|
||||
{
|
||||
"params": [
|
||||
{
|
||||
"type": "const char*",
|
||||
"name": "filename",
|
||||
"desc": "文件名。"
|
||||
}
|
||||
],
|
||||
"annotation": {
|
||||
"constructor": true
|
||||
},
|
||||
"desc": "创建基于文件的data writer。\n\n> 不要直接调用,而是注册到 data\\_writer\\_factory后,通过data\\_writer\\_factory调用",
|
||||
"name": "data_writer_file_create",
|
||||
"return": {
|
||||
"type": "data_writer_t*",
|
||||
"desc": "返回data writer对象。"
|
||||
}
|
||||
}
|
||||
],
|
||||
"events": [],
|
||||
"properties": [],
|
||||
"header": "tkc/data_writer_file.h",
|
||||
"desc": "基于文件实现的 data_writer。通过 data_writer_factory 创建 writer 时,URL的格式如下:\n\n```\nfile://filename\n```",
|
||||
"name": "data_writer_file_t",
|
||||
"parent": "data_writer_t",
|
||||
"annotation": {
|
||||
"fake": true
|
||||
},
|
||||
"level": 2
|
||||
},
|
||||
{
|
||||
"type": "class",
|
||||
"methods": [
|
||||
{
|
||||
"params": [
|
||||
{
|
||||
"type": "const char*",
|
||||
"name": "wbuffer_name",
|
||||
"desc": "wbuffer地址的字符串格式表示 。"
|
||||
}
|
||||
],
|
||||
"annotation": {
|
||||
"constructor": true
|
||||
},
|
||||
"desc": "创建基于wbuffer的data writer。\n\n> 不要直接调用,而是注册到 data\\_writer\\_factory后,通过data\\_writer\\_factory调用",
|
||||
"name": "data_writer_wbuffer_create",
|
||||
"return": {
|
||||
"type": "data_writer_t*",
|
||||
"desc": "返回data writer对象。"
|
||||
}
|
||||
},
|
||||
{
|
||||
"params": [
|
||||
{
|
||||
"type": "wbuffer_t*",
|
||||
"name": "wbuffer",
|
||||
"desc": "wbuffer对象。"
|
||||
},
|
||||
{
|
||||
"type": "char*",
|
||||
"name": "url",
|
||||
"desc": "生成的URL。"
|
||||
}
|
||||
],
|
||||
"annotation": {
|
||||
"static": true
|
||||
},
|
||||
"desc": "构造wbuffer的URL。",
|
||||
"name": "data_writer_wbuffer_build_url",
|
||||
"return": {
|
||||
"type": "const char*",
|
||||
"desc": "返回URL。"
|
||||
}
|
||||
}
|
||||
],
|
||||
"events": [],
|
||||
"properties": [],
|
||||
"header": "tkc/data_writer_wbuffer.h",
|
||||
"desc": "基于内存实现的 data_writer。通过 data_writer_factory 创建 writer 时,URL的格式如下(请用函数data_writer_wbuffer_build_url生成):\n\n```\nwbuffer://addr\n```",
|
||||
"name": "data_writer_wbuffer_t",
|
||||
"parent": "data_writer_t",
|
||||
"annotation": {
|
||||
"fake": true
|
||||
},
|
||||
"level": 2
|
||||
},
|
||||
{
|
||||
"type": "class",
|
||||
"methods": [
|
||||
|
Loading…
x
Reference in New Issue
Block a user