活动介绍
file-type

Dragon Nest游戏补丁生成工具介绍

版权申诉

ZIP文件

1KB | 更新于2024-10-29 | 28 浏览量 | 0 下载量 举报 收藏
download 限时特惠:#14.90
根据提供的文件信息,我们可以推断出以下几个关键知识点: 1. 文件标题和描述表明这是一个名为"PatchTxt-Gen-master"的资源,它是一个用于"Dragon Nest"(龙之谷)游戏的补丁文本生成器。 2. "Dragon Nest"是一款由Eyedentity Games开发的3D多人在线角色扮演游戏(MMORPG)。游戏以其快节奏的动作和卡通风格的画面而闻名。 3. "补丁"一词通常指的是对软件程序的小幅更新或修改,旨在修复已知的错误、漏洞或改进游戏体验。 4. 补丁生成器是一个用于创建或修改游戏补丁的工具,它可能包括多个功能,例如自动化生成补丁差异、合并文件、校验文件完整性等。 5. "Patch.txt"是补丁生成器输出的一个文本文件,通常包含了补丁的详细信息,例如需要更新或修改的文件列表、版本号、更新说明等。 6. "batch"这个词暗示该生成器可能支持批量处理,能够处理多个文件或操作,以便在更新游戏或程序时提高效率。 7. 标签"nest batch"可能意味着该工具是专门为"Dragon Nest"游戏设计的,且能够处理批量操作。 8. 压缩包文件的名称列表显示只有一个文件"PatchTxt-Gen-master",这表明可能包含了整个补丁生成器的主程序或脚本。 9. "PatchTxt-Gen-master"可能是一个版本控制(如Git)中的术语,表示这是主分支上的最新版本。 10. 该资源可能涉及编程技术,特别是与文件处理、版本控制和游戏开发相关的技术。 在实际应用中,"Patch.txt Generator for Dragon Nest"可能会被游戏开发者、运维人员或社区维护者使用,以保证游戏的持续更新和玩家的游戏体验。此外,由于资源标签中的"nest batch",可以推测该工具可能会与特定的游戏服务器、客户端版本或游戏社区相关联。 对于IT专业人士来说,了解该工具的工作原理和操作方法可能需要具备一定的编程背景,尤其是对于文本文件操作、批处理脚本编写以及对Dragon Nest游戏架构的理解。该工具可能涉及的编程语言包括但不限于Python、Shell脚本、PowerShell或C#等。 总结来说,该资源是一个专门为Dragon Nest游戏设计的补丁文本文件生成器,用于批量处理和更新游戏补丁,确保游戏的稳定性和玩家体验的连贯性。

相关推荐

filetype

asttokens 3.0.0 pyhd8ed1ab_1 conda-forge backcall 0.2.0 pyh9f0ad1d_0 conda-forge ca-certificates 2025.6.15 h4c7d964_0 conda-forge certifi 2025.6.15 pypi_0 pypi charset-normalizer 3.4.2 pypi_0 pypi colorama 0.4.6 pyhd8ed1ab_1 conda-forge comm 0.2.2 pyhd8ed1ab_1 conda-forge contourpy 1.3.0 pypi_0 pypi cycler 0.12.1 pypi_0 pypi deap 1.4.3 pypi_0 pypi debugpy 1.8.11 py39h5da7b33_0 decorator 5.2.1 pyhd8ed1ab_0 conda-forge executing 2.2.0 pyhd8ed1ab_0 conda-forge fonttools 4.58.5 pypi_0 pypi idna 3.10 pypi_0 pypi importlib-metadata 8.7.0 pyhe01879c_1 conda-forge importlib-resources 6.5.2 pypi_0 pypi ipykernel 6.29.5 pyh4bbf305_0 conda-forge ipython 8.12.0 pyh08f2357_0 conda-forge jedi 0.19.2 pyhd8ed1ab_1 conda-forge joblib 1.5.1 pypi_0 pypi json5 0.12.0 pypi_0 pypi jupyter_client 8.6.3 pyhd8ed1ab_1 conda-forge jupyter_core 5.7.2 py39hcbf5309_0 conda-forge kiwisolver 1.4.7 pypi_0 pypi libsodium 1.0.18 h8d14728_1 conda-forge lightgbm 4.5.0 pypi_0 pypi matplotlib 3.5.1 pypi_0 pypi matplotlib-inline 0.1.7 pyhd8ed1ab_1 conda-forge nest-asyncio 1.6.0 pyhd8ed1ab_1 conda-forge numpy 1.23.0 pypi_0 pypi openssl 3.0.16 h3f729d1_0 packaging 25.0 pyh29332c3_1 conda-forge pandas 2.3.0 pypi_0 pypi parso 0.8.4 pyhd8ed1ab_1 conda-forge patsy 1.0.1 pypi_0 pypi pickleshare 0.7.5 pyhd8ed1ab_1004 conda-forge pillow 11.3.0 pypi_0 pypi pip 25.1 pyhc872135_2 platformdirs 4.3.8 pyhe01879c_0 conda-forge prompt-toolkit 3.0.51 pyha770c72_0 conda-forge prompt_toolkit 3.0.51 hd8ed1ab_0 conda-forge psutil 5.9.0 py39h827c3e9_1 pure_eval 0.2.3 pyhd8ed1ab_1 conda-forge pyaml 25.5.0 pypi_0 pypi pygments 2.19.2 pyhd8ed1ab_0 conda-forge pyparsing 3.2.3 pypi_0 pypi python 3.9.21 h8205438_1 python-dateutil 2.9.0.post0 pyhe01879c_2 conda-forge python_abi 3.9 2_cp39 conda-forge pytz 2025.2 pypi_0 pypi pywin32 308 py39h5da7b33_0 pyyaml 6.0.2 pypi_0 pypi pyzmq 24.0.1 py39hea35a22_1 conda-forge requests 2.32.4 pypi_0 pypi scikit-learn 1.5.0 pypi_0 pypi scikit-optimize 0.10.2 pypi_0 pypi scipy 1.13.1 pypi_0 pypi seaborn 0.13.2 pypi_0 pypi setuptools 78.1.1 py39haa95532_0 six 1.17.0 pyhd8ed1ab_0 conda-forge skorch 1.1.0 pypi_0 pypi sqlite 3.45.3 h2bbff1b_0 stack_data 0.6.3 pyhd8ed1ab_1 conda-forge statsmodels 0.14.4 pypi_0 pypi tabulate 0.9.0 pypi_0 pypi threadpoolctl 3.6.0 pypi_0 pypi torch 1.12.0+cu113 pypi_0 pypi torchaudio 0.12.0+cu113 pypi_0 pypi torchvision 0.13.0+cu113 pypi_0 pypi tornado 6.2 py39ha55989b_1 conda-forge tqdm 4.67.1 pypi_0 pypi traitlets 5.14.3 pyhd8ed1ab_1 conda-forge typing_extensions 4.14.1 pyhe01879c_0 conda-forge tzdata 2025.2 pypi_0 pypi ucrt 10.0.22621.0 h57928b3_1 conda-forge urllib3 2.5.0 pypi_0 pypi vc 14.42 haa95532_5 vs2015_runtime 14.42.34433 hbfb602d_5 wcwidth 0.2.13 pyhd8ed1ab_1 conda-forge wheel 0.45.1 py39haa95532_0 xgboost 2.1.4 pypi_0 pypi zeromq 4.3.4 h0e60522_1 conda-forge zipp 3.23.0 pyhd8ed1ab_0 conda-forge这是我的环境配置,指导我安装cuml库

filetype

ERROR: Exception: Traceback (most recent call last): File "E:\AI_Robot\anaconda3\Lib\site-packages\pip\_internal\cli\base_command.py", line 180, in exc_logging_wrapper status = run_func(*args) ^^^^^^^^^^^^^^^ File "E:\AI_Robot\anaconda3\Lib\site-packages\pip\_internal\cli\req_command.py", line 248, in wrapper return func(self, options, args) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "E:\AI_Robot\anaconda3\Lib\site-packages\pip\_internal\commands\install.py", line 377, in run requirement_set = resolver.resolve( ^^^^^^^^^^^^^^^^^ File "E:\AI_Robot\anaconda3\Lib\site-packages\pip\_internal\resolution\resolvelib\resolver.py", line 161, in resolve self.factory.preparer.prepare_linked_requirements_more(reqs) File "E:\AI_Robot\anaconda3\Lib\site-packages\pip\_internal\operations\prepare.py", line 565, in prepare_linked_requirements_more self._complete_partial_requirements( File "E:\AI_Robot\anaconda3\Lib\site-packages\pip\_internal\operations\prepare.py", line 479, in _complete_partial_requirements for link, (filepath, _) in batch_download: File "E:\AI_Robot\anaconda3\Lib\site-packages\pip\_internal\network\download.py", line 183, in __call__ for chunk in chunks: File "E:\AI_Robot\anaconda3\Lib\site-packages\pip\_internal\cli\progress_bars.py", line 53, in _rich_progress_bar for chunk in iterable: File "E:\AI_Robot\anaconda3\Lib\site-packages\pip\_internal\network\utils.py", line 63, in response_chunks for chunk in response.raw.stream( File "E:\AI_Robot\anaconda3\Lib\site-packages\pip\_vendor\urllib3\response.py", line 622, in stream data = self.read(amt=amt, decode_content=decode_content) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "E:\AI_Robot\anaconda3\Lib\site-packages\pip\_vendor\urllib3\response.py", line 561, in read data = self._fp_read(amt) if not fp_closed else b"" ^^^^^^^^^^^^^^^^^^ File "E:\AI_Robot\anaconda3\Lib\site-packages\pip\_vendor\urllib3\response.py", line 527, in _fp_read return self._fp.read(amt) if amt is not None else self._fp.read() ^^^^^^^^^^^^^^^^^^ File "E:\AI_Robot\anaconda3\Lib\site-packages\pip\_vendor\cachecontrol\filewrapper.py", line 96, in read self._close() File "E:\AI_Robot\anaconda3\Lib\site-packages\pip\_vendor\cachecontrol\filewrapper.py", line 76, in _close self.__callback(result) File "E:\AI_Robot\anaconda3\Lib\site-packages\pip\_vendor\cachecontrol\controller.py", line 353, in cache_response self._cache_set(cache_url, request, response, body, expires_time) File "E:\AI_Robot\anaconda3\Lib\site-packages\pip\_vendor\cachecontrol\controller.py", line 274, in _cache_set self.serializer.dumps(request, response, body), ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "E:\AI_Robot\anaconda3\Lib\site-packages\pip\_vendor\cachecontrol\serialize.py", line 70, in dumps return b",".join([b"cc=4", msgpack.dumps(data, use_bin_type=True)]) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "E:\AI_Robot\anaconda3\Lib\site-packages\pip\_vendor\msgpack\__init__.py", line 38, in packb return Packer(**kwargs).pack(o) ^^^^^^^^^^^^^^^^^^^^^^^^ File "E:\AI_Robot\anaconda3\Lib\site-packages\pip\_vendor\msgpack\fallback.py", line 883, in pack self._pack(obj) File "E:\AI_Robot\anaconda3\Lib\site-packages\pip\_vendor\msgpack\fallback.py", line 862, in _pack return self._pack_map_pairs( ^^^^^^^^^^^^^^^^^^^^^ File "E:\AI_Robot\anaconda3\Lib\site-packages\pip\_vendor\msgpack\fallback.py", line 968, in _pack_map_pairs self._pack(v, nest_limit - 1) File "E:\AI_Robot\anaconda3\Lib\site-packages\pip\_vendor\msgpack\fallback.py", line 862, in _pack return self._pack_map_pairs( ^^^^^^^^^^^^^^^^^^^^^ File "E:\AI_Robot\anaconda3\Lib\site-packages\pip\_vendor\msgpack\fallback.py", line 968, in _pack_map_pairs self._pack(v, nest_limit - 1) File "E:\AI_Robot\anaconda3\Lib\site-packages\pip\_vendor\msgpack\fallback.py", line 821, in _pack return self._buffer.write(obj) ^^^^^^^^^^^^^^^^^^^^^^^ MemoryError

filetype

``` exec::task<void> net_block_extra_const_process() try { DEBUG_TIME_TRACE_SCOPE(utils::TRACE_TIER::INNER_PROCESS, __FUNCTION__); DEBUG_CAM_TRACE_ASYNC_SCOPE(__FUNCTION__, utils::DEFAULT_TRACE_ID); auto batch_num = fx::capn_algo_settings(e_)->getNet().getGenerateCfg().getPatchNum(); if (!net_cfg_params_.hasModelName()) { throw invalid_params{EXCEPTION_POINT}; } auto &extra_consts = rpr_.extra_net_params->extra_consts; if (patch_buffers_->extra_const_buffer == nullptr) { CAM_LOG_WARNING(__FUNCTION__ << " extra_const_buffer is null"); throw invalid_params{EXCEPTION_POINT}; } if (rpr_.extra_net_params->is_not_extra_const == false) { auto size = extra_consts.size(); if (batch_num <= 0 || size == 0) { throw invalid_params{EXCEPTION_POINT}; } if (net_cfg_params_.getIsQualcommFp16() == false) { auto ecb = static_cast<__fp16 *>(patch_buffers_->extra_const_buffer->getAddress()); errno_t err = memcpy_s(ecb, patch_buffers_->extra_const_buffer->getSize(), extra_consts.data(), size * sizeof(airaw::pre_processing::psf_pred::extrac_const)); if (err != EOK) { CAM_LOG_WARNING(__PRETTY_FUNCTION__ << " memcpy extraConst to buff failed"); throw securec_failed{EXCEPTION_POINT}; } } else { auto ecb = static_cast<float *>(patch_buffers_->extra_const_buffer->getAddress()); for (int i = 0; i < extra_consts.size(); i++) { ecb[i] = extra_consts[i].normal; } } } fx::ops::flush_cc(patch_buffers_->extra_const_buffer); CAM_LOG_INFO(__FUNCTION__ << " extra const success"); co_return; } CATCH_AND_NEST()```优化函数深度

filetype

exec::task<void> net_block_extra_const_process() try { DEBUG_TIME_TRACE_SCOPE(utils::TRACE_TIER::INNER_PROCESS, __FUNCTION__); DEBUG_CAM_TRACE_ASYNC_SCOPE(__FUNCTION__, utils::DEFAULT_TRACE_ID); auto batch_num = fx::capn_algo_settings(e_)->getNet().getGenerateCfg().getPatchNum(); if (!net_cfg_params_.hasModelName()) { throw invalid_params{EXCEPTION_POINT}; } auto &extra_consts = rpr_.extra_net_params->extra_consts; if (patch_buffers_->extra_const_buffer == nullptr) { CAM_LOG_WARNING(__FUNCTION__ << " extra_const_buffer is null"); throw invalid_params{EXCEPTION_POINT}; } if (rpr_.extra_net_params->is_not_extra_const == false) { auto size = extra_consts.size(); if (batch_num <= 0 || size == 0) { throw invalid_params{EXCEPTION_POINT}; } if (net_cfg_params_.getIsQualcommFp16() == false) { auto ecb = static_cast<__fp16 *>(patch_buffers_->extra_const_buffer->getAddress()); errno_t err = memcpy_s(ecb, patch_buffers_->extra_const_buffer->getSize(), extra_consts.data(), size * sizeof(airaw::pre_processing::psf_pred::extrac_const)); if (err != EOK) { CAM_LOG_WARNING(__PRETTY_FUNCTION__ << " memcpy extraConst to buff failed"); throw securec_failed{EXCEPTION_POINT}; } } else { auto ecb = static_cast<float *>(patch_buffers_->extra_const_buffer->getAddress()); for (int i = 0; i < extra_consts.size(); i++) { ecb[i] = extra_consts[i].normal; } } } fx::ops::flush_cc(patch_buffers_->extra_const_buffer); CAM_LOG_INFO(__FUNCTION__ << " extra const success"); co_return; } CATCH_AND_NEST()降低函数深度,给我完整重构代码,并详细解释

filetype

``` exec::task<void> net_block_extra_const_process() try { DEBUG_TIME_TRACE_SCOPE(utils::TRACE_TIER::INNER_PROCESS, __FUNCTION__); DEBUG_CAM_TRACE_ASYNC_SCOPE(__FUNCTION__, utils::DEFAULT_TRACE_ID); auto batch_num = fx::capn_algo_settings(e_)->getNet().getGenerateCfg().getPatchNum(); if (!net_cfg_params_.hasModelName()) { throw invalid_params{EXCEPTION_POINT}; } auto &extra_consts = rpr_.extra_net_params->extra_consts; if (patch_buffers_->extra_const_buffer == nullptr) { CAM_LOG_WARNING(__FUNCTION__ << " extra_const_buffer is null"); throw invalid_params{EXCEPTION_POINT}; } if (rpr_.extra_net_params->is_not_extra_const == false) { auto size = extra_consts.size(); if (batch_num <= 0 || size == 0) { throw invalid_params{EXCEPTION_POINT}; } if (net_cfg_params_.getIsQualcommFp16() == false) { auto ecb = static_cast<__fp16 *>(patch_buffers_->extra_const_buffer->getAddress()); errno_t err = memcpy_s(ecb, patch_buffers_->extra_const_buffer->getSize(), extra_consts.data(), size * sizeof(airaw::pre_processing::psf_pred::extrac_const)); if (err != EOK) { CAM_LOG_WARNING(__PRETTY_FUNCTION__ << " memcpy extraConst to buff failed"); throw securec_failed{EXCEPTION_POINT}; } } else { auto ecb = static_cast<float *>(patch_buffers_->extra_const_buffer->getAddress()); for (int i = 0; i < extra_consts.size(); i++) { ecb[i] = extra_consts[i].normal; } } } fx::ops::flush_cc(patch_buffers_->extra_const_buffer); CAM_LOG_INFO(__FUNCTION__ << " extra const success"); co_return; } CATCH_AND_NEST()```降低函数深度并给出详细解释

filetype

exec::task<void> net_block_extra_const_process() try { DEBUG_TIME_TRACE_SCOPE(utils::TRACE_TIER::INNER_PROCESS, __FUNCTION__); DEBUG_CAM_TRACE_ASYNC_SCOPE(__FUNCTION__, utils::DEFAULT_TRACE_ID); auto batch_num = fx::capn_algo_settings(e_)->getNet().getGenerateCfg().getPatchNum(); if (!net_cfg_params_.hasModelName()) { throw invalid_params{EXCEPTION_POINT}; } auto &extra_consts = rpr_.extra_net_params->extra_consts; if (patch_buffers_->extra_const_buffer == nullptr) { CAM_LOG_WARNING(__FUNCTION__ << " extra_const_buffer is null"); throw invalid_params{EXCEPTION_POINT}; } if (rpr_.extra_net_params->is_not_extra_const == false) { auto size = extra_consts.size(); if (batch_num <= 0 || size == 0) { throw invalid_params{EXCEPTION_POINT}; } if (net_cfg_params_.getIsQualcommFp16() == false) { auto ecb = static_cast<__fp16 *>(patch_buffers_->extra_const_buffer->getAddress()); errno_t err = memcpy_s(ecb, patch_buffers_->extra_const_buffer->getSize(), extra_consts.data(), size * sizeof(airaw::pre_processing::psf_pred::extrac_const)); if (err != EOK) { CAM_LOG_WARNING(__PRETTY_FUNCTION__ << " memcpy extraConst to buff failed"); throw securec_failed{EXCEPTION_POINT}; } } else { auto ecb = static_cast<float *>(patch_buffers_->extra_const_buffer->getAddress()); for (int i = 0; i < extra_consts.size(); i++) { ecb[i] = extra_consts[i].normal; } } } fx::ops::flush_cc(patch_buffers_->extra_const_buffer); CAM_LOG_INFO(__FUNCTION__ << " extra const success"); co_return; } CATCH_AND_NEST()代码函数深度为6,请降低函数深度并进行详细说明

filetype

``` exec::task<void> net_block_extra_const_process() try { DEBUG_TIME_TRACE_SCOPE(utils::TRACE_TIER::INNER_PROCESS, __FUNCTION__); DEBUG_CAM_TRACE_ASYNC_SCOPE(__FUNCTION__, utils::DEFAULT_TRACE_ID); auto batch_num = fx::capn_algo_settings(e_)->getNet().getGenerateCfg().getPatchNum(); if (!net_cfg_params_.hasModelName()) { throw invalid_params{EXCEPTION_POINT}; } auto &extra_consts = rpr_.extra_net_params->extra_consts; if (patch_buffers_->extra_const_buffer == nullptr) { CAM_LOG_WARNING(__FUNCTION__ << " extra_const_buffer is null"); throw invalid_params{EXCEPTION_POINT}; } if (rpr_.extra_net_params->is_not_extra_const == false) { auto size = extra_consts.size(); if (batch_num <= 0 || size == 0) { throw invalid_params{EXCEPTION_POINT}; } if (net_cfg_params_.getIsQualcommFp16() == false) { auto ecb = static_cast<__fp16 *>(patch_buffers_->extra_const_buffer->getAddress()); errno_t err = memcpy_s(ecb, patch_buffers_->extra_const_buffer->getSize(), extra_consts.data(), size * sizeof(airaw::pre_processing::psf_pred::extrac_const)); if (err != EOK) { CAM_LOG_WARNING(__PRETTY_FUNCTION__ << " memcpy extraConst to buff failed"); throw securec_failed{EXCEPTION_POINT}; } } else { auto ecb = static_cast<float *>(patch_buffers_->extra_const_buffer->getAddress()); for (int i = 0; i < extra_consts.size(); i++) { ecb[i] = extra_consts[i].normal; } } } fx::ops::flush_cc(patch_buffers_->extra_const_buffer); CAM_LOG_INFO(__FUNCTION__ << " extra const success"); co_return; } CATCH_AND_NEST()```标注出优化的层数,原有的深度为6

filetype

``` exec::task<void> net_block_extra_const_process() try { DEBUG_TIME_TRACE_SCOPE(utils::TRACE_TIER::INNER_PROCESS, __FUNCTION__); DEBUG_CAM_TRACE_ASYNC_SCOPE(__FUNCTION__, utils::DEFAULT_TRACE_ID); auto batch_num = fx::capn_algo_settings(e_)->getNet().getGenerateCfg().getPatchNum(); if (!net_cfg_params_.hasModelName()) { throw invalid_params{EXCEPTION_POINT}; } auto &extra_consts = rpr_.extra_net_params->extra_consts; if (patch_buffers_->extra_const_buffer == nullptr) { CAM_LOG_WARNING(__FUNCTION__ << " extra_const_buffer is null"); throw invalid_params{EXCEPTION_POINT}; } if (rpr_.extra_net_params->is_not_extra_const == false) { auto size = extra_consts.size(); if (batch_num <= 0 || size == 0) { throw invalid_params{EXCEPTION_POINT}; } if (net_cfg_params_.getIsQualcommFp16() == false) { auto ecb = static_cast<__fp16 *>(patch_buffers_->extra_const_buffer->getAddress()); errno_t err = memcpy_s(ecb, patch_buffers_->extra_const_buffer->getSize(), extra_consts.data(), size * sizeof(airaw::pre_processing::psf_pred::extrac_const)); if (err != EOK) { CAM_LOG_WARNING(__PRETTY_FUNCTION__ << " memcpy extraConst to buff failed"); throw securec_failed{EXCEPTION_POINT}; } } else { auto ecb = static_cast<float *>(patch_buffers_->extra_const_buffer->getAddress()); for (int i = 0; i < extra_consts.size(); i++) { ecb[i] = extra_consts[i].normal; } } } fx::ops::flush_cc(patch_buffers_->extra_const_buffer); CAM_LOG_INFO(__FUNCTION__ << " extra const success"); co_return; } CATCH_AND_NEST()```优化函数深度,不要改变变量名和原本函数逻辑

filetype

``` exec::task<void> net_block_extra_const_process() try { DEBUG_TIME_TRACE_SCOPE(utils::TRACE_TIER::INNER_PROCESS, __FUNCTION__); DEBUG_CAM_TRACE_ASYNC_SCOPE(__FUNCTION__, utils::DEFAULT_TRACE_ID); auto batch_num = fx::capn_algo_settings(e_)->getNet().getGenerateCfg().getPatchNum(); if (!net_cfg_params_.hasModelName()) { throw invalid_params{EXCEPTION_POINT}; } auto &extra_consts = rpr_.extra_net_params->extra_consts; if (patch_buffers_->extra_const_buffer == nullptr) { CAM_LOG_WARNING(__FUNCTION__ << " extra_const_buffer is null"); throw invalid_params{EXCEPTION_POINT}; } if (rpr_.extra_net_params->is_not_extra_const == false) { auto size = extra_consts.size(); if (batch_num <= 0 || size == 0) { throw invalid_params{EXCEPTION_POINT}; } if (net_cfg_params_.getIsQualcommFp16() == false) { auto ecb = static_cast<__fp16 *>(patch_buffers_->extra_const_buffer->getAddress()); errno_t err = memcpy_s(ecb, patch_buffers_->extra_const_buffer->getSize(), extra_consts.data(), size * sizeof(airaw::pre_processing::psf_pred::extrac_const)); if (err != EOK) { CAM_LOG_WARNING(__PRETTY_FUNCTION__ << " memcpy extraConst to buff failed"); throw securec_failed{EXCEPTION_POINT}; } } else { auto ecb = static_cast<float *>(patch_buffers_->extra_const_buffer->getAddress()); for (int i = 0; i < extra_consts.size(); i++) { ecb[i] = extra_consts[i].normal; } } } fx::ops::flush_cc(patch_buffers_->extra_const_buffer); CAM_LOG_INFO(__FUNCTION__ << " extra const success"); co_return; } CATCH_AND_NEST()```减少函数深度,给出完整代码,和详细解释

filetype

exec::task<void> net_block_extra_const_process() try { DEBUG_TIME_TRACE_SCOPE(utils::TRACE_TIER::INNER_PROCESS, __FUNCTION__); DEBUG_CAM_TRACE_ASYNC_SCOPE(__FUNCTION__, utils::DEFAULT_TRACE_ID); auto batch_num = fx::capn_algo_settings(e_)->getNet().getGenerateCfg().getPatchNum(); if (!net_cfg_params_.hasModelName()) { throw invalid_params{EXCEPTION_POINT}; } auto &extra_consts = rpr_.extra_net_params->extra_consts; if (patch_buffers_->extra_const_buffer == nullptr) { CAM_LOG_WARNING(__FUNCTION__ << " extra_const_buffer is null"); throw invalid_params{EXCEPTION_POINT}; } if (rpr_.extra_net_params->is_not_extra_const == false) { auto size = extra_consts.size(); if (batch_num <= 0 || size == 0) { throw invalid_params{EXCEPTION_POINT}; } if (net_cfg_params_.getIsQualcommFp16() == false) { auto ecb = static_cast<__fp16 *>(patch_buffers_->extra_const_buffer->getAddress()); errno_t err = memcpy_s(ecb, patch_buffers_->extra_const_buffer->getSize(), extra_consts.data(), size * sizeof(airaw::pre_processing::psf_pred::extrac_const)); if (err != EOK) { CAM_LOG_WARNING(__PRETTY_FUNCTION__ << " memcpy extraConst to buff failed"); throw securec_failed{EXCEPTION_POINT}; } } else { auto ecb = static_cast<float *>(patch_buffers_->extra_const_buffer->getAddress()); for (int i = 0; i < extra_consts.size(); i++) { ecb[i] = extra_consts[i].normal; } } } fx::ops::flush_cc(patch_buffers_->extra_const_buffer); CAM_LOG_INFO(__FUNCTION__ << " extra const success"); co_return; } CATCH_AND_NEST()不改变原本的逻辑和代码执行顺序,降低函数深度,给出完整代码,并详细解释

filetype

``` exec::task<void> net_block_extra_const_process() try { DEBUG_TIME_TRACE_SCOPE(utils::TRACE_TIER::INNER_PROCESS, __FUNCTION__); DEBUG_CAM_TRACE_ASYNC_SCOPE(__FUNCTION__, utils::DEFAULT_TRACE_ID); auto batch_num = fx::capn_algo_settings(e_)->getNet().getGenerateCfg().getPatchNum(); if (!net_cfg_params_.hasModelName()) { throw invalid_params{EXCEPTION_POINT}; } auto &extra_consts = rpr_.extra_net_params->extra_consts; if (patch_buffers_->extra_const_buffer == nullptr) { CAM_LOG_WARNING(__FUNCTION__ << " extra_const_buffer is null"); throw invalid_params{EXCEPTION_POINT}; } if (rpr_.extra_net_params->is_not_extra_const == false) { auto size = extra_consts.size(); if (batch_num <= 0 || size == 0) { throw invalid_params{EXCEPTION_POINT}; } if (net_cfg_params_.getIsQualcommFp16() == false) { auto ecb = static_cast<__fp16 *>(patch_buffers_->extra_const_buffer->getAddress()); errno_t err = memcpy_s(ecb, patch_buffers_->extra_const_buffer->getSize(), extra_consts.data(), size * sizeof(airaw::pre_processing::psf_pred::extrac_const)); if (err != EOK) { CAM_LOG_WARNING(__PRETTY_FUNCTION__ << " memcpy extraConst to buff failed"); throw securec_failed{EXCEPTION_POINT}; } } else { auto ecb = static_cast<float *>(patch_buffers_->extra_const_buffer->getAddress()); for (int i = 0; i < extra_consts.size(); i++) { ecb[i] = extra_consts[i].normal; } } } fx::ops::flush_cc(patch_buffers_->extra_const_buffer); CAM_LOG_INFO(__FUNCTION__ << " extra const success"); co_return; } CATCH_AND_NEST()```解释这个代码内容,并降低函数深度,不要改变原本调用的函数

何欣颜
  • 粉丝: 100
上传资源 快速赚钱