Yayin Story Studio logo Yayin Story Studio 项目文档
回到主页 用户手册

ASERStudio::ASEREnv::ASERDebugIO Class

class ASERStudio::ASEREnv::ASERDebugIO

ASERDebugIO提供与ASERDebugPipeline交互的API. 详情...

头文件: #include <ASERDebugIO>
自以下版本: ASERStudio 2.0

公开成员函数

(自 ASERStudio 2.0 引入) ASERDebugIO()
(自 ASERStudio 2.0 引入) virtual ~ASERDebugIO()
(自 ASERStudio 2.0 引入) void changeDirectory(const QString &directoryPath)
(自 ASERStudio 2.0 引入) void changeSpeed()
(自 ASERStudio 2.2 引入) ASERStudio::ASEREnv::ASERDebugIO::Page getCurrentPage() const
(自 ASERStudio 2.0 引入) ASERStudio::ASEREnv::ASERProgram *getProgram() const
(自 ASERStudio 2.2 引入) void open(const QString &projectPath)
(自 ASERStudio 2.2 引入) void play(const QString &fileName)
(自 ASERStudio 2.0 引入) void selectBranch(qint32 branchIndex)
(自 ASERStudio 2.0 引入) void setProgram(ASERStudio::ASEREnv::ASERProgram *program)
(自 ASERStudio 2.2 引入) void stop()
(自 ASERStudio 2.2 引入) void switchPage(ASERStudio::ASEREnv::ASERDebugIO::Page page)
(自 ASERStudio 2.0 引入) void toggleAuto()

详细说明

ASERDebugIO类封装了与ASE-Remake调试输出的交互功能。 它通过连接ASERProgram的具名管道来接收来自ASE-Remake的调试信息, 并将这些信息转换为相应的信号,以供其他组件使用。

值得指出的是,ASERDebugIO并不单独维护具名管道,因此你需要 创建一个ASERProgram实例,并将其设置给ASERDebugIO,以便正确接收调试信息。 所以,这类也未设置任何与具名管道相关的控制或响应API,它只是依附于ASERProgram来工作的。

如果没有有效的ASERProgram设置,这类的任何设置函数均无效,也不会有信号发出。

成员函数文档

[since ASERStudio 2.0] ASERDebugIO::ASERDebugIO()

构造函数。

这个function 从 ASERStudio 2.0 开始支持。

[virtual noexcept, since ASERStudio 2.0] ASERDebugIO::~ASERDebugIO()

析构函数。

这个function 从 ASERStudio 2.0 开始支持。

[since ASERStudio 2.0] void ASERDebugIO::changeDirectory(const QString &directoryPath)

directoryPath 要切换到的目录路径

通过具名管道向ASER程序发送切换当前目录的命令。这里封装了cd命令

这个function 从 ASERStudio 2.0 开始支持。

[since ASERStudio 2.0] void ASERDebugIO::changeSpeed()

通过具名管道向ASER程序发送切换播放速度的命令。这里封装了changespeed命令

这个function 从 ASERStudio 2.0 开始支持。

[since ASERStudio 2.2] ASERStudio::ASEREnv::ASERDebugIO::Page ASERDebugIO::getCurrentPage() const

return 当前页面的状态。

这个状态是通过switchPage函数设置的。 目前ASE-Remake <-> ASER Studio属于开环控制,因此状态可能不准确

这个function 从 ASERStudio 2.2 开始支持。

[since ASERStudio 2.0] ASERStudio::ASEREnv::ASERProgram *ASERDebugIO::getProgram() const

return 当前设置的ASERProgram实例,如果没有设置则返回nullptr

这个function 从 ASERStudio 2.0 开始支持。

[since ASERStudio 2.2] void ASERDebugIO::open(const QString &projectPath)

projectPath 要打开的项目文件路径

通过具名管道向ASER程序发送打开项目的命令。这里封装了open命令 这个命令不会自动切换页面,只是向ASER推送一个置顶项目的请求, 随后在切换到storyset页面时该项目会被打开

这个function 从 ASERStudio 2.2 开始支持。

[since ASERStudio 2.2] void ASERDebugIO::play(const QString &fileName)

fileName 要播放的故事文件名

通过具名管道向ASER程序发送播放故事的命令。这里封装了play命令 play命令只能在storyset页面执行,如果当前不是,这个函数 会自动发送相关命令切换到storyset页面。

这个function 从 ASERStudio 2.2 开始支持。

[since ASERStudio 2.0] void ASERDebugIO::selectBranch(qint32 branchIndex)

branchIndex 要选择的分支索引

通过具名管道向ASER程序发送选择分支的命令。这里封装了select命令

这个function 从 ASERStudio 2.0 开始支持。

[since ASERStudio 2.0] void ASERDebugIO::setProgram(ASERStudio::ASEREnv::ASERProgram *program)

program ASERProgram实例的指针

设置ASERProgram实例以接收调试信息。

这个function 从 ASERStudio 2.0 开始支持。

[since ASERStudio 2.2] void ASERDebugIO::stop()

通过具名管道向ASER程序发送停止播放的命令。这里封装了stop命令

这个function 从 ASERStudio 2.2 开始支持。

[since ASERStudio 2.2] void ASERDebugIO::switchPage(ASERStudio::ASEREnv::ASERDebugIO::Page page)

page 要切换到的页面

通过具名管道向ASER程序发送切换当前页面的命令。这里封装了switch命令

这个function 从 ASERStudio 2.2 开始支持。

[since ASERStudio 2.0] void ASERDebugIO::toggleAuto()

通过具名管道向ASER程序发送切换自动播放的命令。这里封装了toggleauto命令

这个function 从 ASERStudio 2.0 开始支持。