一种控制脉冲序列执行的方法和装置。其中,所述脉冲序列包括若干个序列模块,所述序列模块包括至少一个序列单元,所述方法包括:接收用户执行所述脉冲序列的指令;根据所述执行脉冲序列的指令,按照所述序列模块的排列顺序,根据需要调用预先建立的中介所的信息,依次控制所述序列模块执行;所述中介所,包括各个序列模块所提供的自身信息的集合。本发明专利技术实施例中所述的方法,当执行所述序列模块时,可以根据需要去调用所述中介所中所述其它序列模块的信息,而无需重复遍历剩余的节点或将所需要的节点引用到自身对象里,在保持序列模块可复用性和灵活性的同时,又提高了脉冲序列的执行效率。
【技术实现步骤摘要】
【专利摘要】一种控制脉冲序列执行的方法和装置。其中,所述脉冲序列包括若干个序列模块,所述序列模块包括至少一个序列单元,所述方法包括:接收用户执行所述脉冲序列的指令;根据所述执行脉冲序列的指令,按照所述序列模块的列顺序,根据需要调用预先建立的中介所的信息,依次控制所述序列模块执行;所述中介所,包括各个序列模块所提供的自身信息的集合。本专利技术实施例中所述的方法,当执行所述序列模块时,可以根据需要去调用所述中介所中所述其它序列模块的信息,而无需重复遍历剩余的节点或将所需要的节点引用到自身对象里,在保持序列模块可复用性和灵活性的同时,又提高了脉冲序列的执行效率。【专利说明】控制脉冲序列执行的方法和装置
本专利技术涉及脉冲序列的执行领域,具体涉及一种控制脉冲序列执行的方法和装 置。
技术介绍
脉冲序列是指由具有一定宽度、幅度的射频脉冲和/或梯度脉冲等序列单元组成 的序列。现有技术中,通常将若干个射频脉冲和/或梯度脉冲组合成可重复利用的多个序 列模块,所述序列模块包括至少一个序列单元,所述序列模块再按照特定的次序和层级结 构排列形成脉冲序列。 所述脉冲序列的各个序列模块之间存在依赖关系。所述依赖关系是指为了执行所 述脉冲序列,各个序列模块之间存在的相互作用、相互影响的关系。例如,执行所述脉冲序 列中某个序列模块需要知道另一序列模块的信号强度或者持续时间。所述序列模块之间的 依赖关系越强,脉冲序列的执行难度就会越大,维护成本也就会越高。 为了清晰描述脉冲序列各序列模块之间的层级关系,采用树形结构来组织各序列 模块,每一个序列模块成为树形结构的一个节点,再采用前序遍历法来控制各序列模块的 执行。如图1所示的脉冲序列,包括A、B、C、D四个序列模块,按照前序遍历法执行该脉冲 序列时,遵从从上至下、从左至右的遍历原则,各个序列模块的执行顺序为:A->B->C->D。对 于更复杂的脉冲序列,如图2所示,可以包括A、B、C、D、E、F、G七个序列模块,同样的,按照 前序遍历法执行时,执行顺序为:A->B->E->F->G->C->D。 在执行过程中,对于各个序列模块之间存在依赖关系的情况,现有技术的处理方 法中,对于上述序列模块的执行,要么通过依次遍历所有节点直至获得所需要的节点信息, 要么把需要的节点信息引用到自身对象中。前者虽然可以保持各个序列模块之间的相互独 立,保持了序列模块的可复用性,但增加了遍历查找的次数,降低了脉冲序列执行的效率, 后者保证了脉冲序列的执行效率,却降低了序列模块的可复用性和灵活性。
技术实现思路
本专利技术解决的问题是现有技术中无法兼顾脉冲序列的执行效率与序列模块的可 复用性和灵活性。 为解决上述问题,本专利技术实施例提供一种控制脉冲序列执行的方法,所述脉冲序 列包括若干个序列模块,所述序列模块包括至少一个序列单元,所述方法包括: 接收用户执行所述脉冲序列的指令; 根据所述执行脉冲序列的指令,按照所述序列模块的排列顺序,根据需要调用预 先建立的中介所的信息,依次控制所述序列模块执行;所述中介所,包括各个序列模块所提 供的自身信息。 可选的,所述根据需要调用预先建立的中介所的信息包括:当确定执行所述序列 模块需要其它序列模块的信息时,从所述中介所中调用所述其它序列模块的信息。 toon] 可选的,所述根据需要调用预先建立的中介所的信息包括:当确定执行所述序列 模块需要其它序列模块的信息时,若所述序列模块与所述其它序列模块之间存在递归关 系,则调用所述存在递归关系的其它序列模块的信息;若所述序列模块与所述其它序列模 块之间不存在递归关系,则从所述中介所中调用所述不存在递归关系的其它序列模块的信 息。 可选的,所述各个序列模块按照树形结构排列,每个序列模块作为所述树形结构 的一个节点。 可选的,所述中介所包括所述树形结构各个节点的索引信息。 可选的,所述各个节点的索引信息包括:各个节点的标识以及用于获取各个节点 信息对应的函数。 可选的,所述各个节点信息包括以下至少一种:节点的激活状态、持续时间、信号 强度、计算结果和能量。 可选的,所述用于获取各个节点信息对应的函数为指针函数。 本专利技术的实施例还提供了一种控制所述脉冲序列执行的装置,所述脉冲序列包括 若干个序列模块,所述序列模块包括至少一个序列单元,所述装置包括: 指令接收单元,用于接收用户执行所述脉冲序列的指令; 中介所,包括各个序列模块所提供的自身信息; 执行控制单元,根据执行所述脉冲序列的指令,按照所述序列模块的排列顺序,根 据需要调用所述中介所中的信息,依次控制所述序列模块的执行。 可选的,所述执行控制单元包括: 第一判断子单元,用于根据执行所述脉冲序列的指令,按照所述序列模块的排列 顺序,依次判断执行所述序列模块是否需要其它序列模块的信息; 第一执行子单元,当所述第一判断子单元确定执行所述序列模块需要其它序列模 块的信息时,所述第一执行子单元用于从所述中介所中调用所述其它序列模块的信息,执 行所述序列模块。 可选的,所述执行控制单元包括: 第二判断子单元,用于根据执行所述脉冲序列的指令,按照所述序列模块的排列 顺序,依次判断执行所述序列模块是否需要其它序列模块的信息,以及当确定执行所述序 列模块需要其它序列模块的信息时,判断所述序列模块与所述其它序列模块之间是否存在 递归关系; 第二执行子单元,当所述第二判断子单元确定执行所述序列模块需要其它序列模 块的信息且所述序列模块与所述其它序列模块之间存在递归关系时,所述第二执行子单元 用于调用所述存在递归关系的其它序列模块的信息,执行所述序列模块;当所述第二判断 子单元确定执行所述序列模块需要其它序列模块的信息且所述序列模块与所述其它序列 模块之间不存在递归关系时,所述第二执行子单元用于从所述中介所中调用所述不存在递 归关系的其它序列模块的信息,执行所述序列模块。 可选的,所述序列模块按照树形结构排列,每个序列模块作为所述树形结构的一 个节点。 可选的,所述中介所包括所述树形结构各个节点的索引信息。 可选的,所述各个节点的索引信息包括:各个节点的标识以及用于获取各个节点 信息对应的函数。 可选的,所述各个节点信息包括以下至少一种:节点的激活状态、持续时间、信号 强度、计算结果和能量。 与现有技术相比,本专利技术的技术方案具有以下优点: 本专利技术的实施例中,在执行脉冲序列时,预先建立了一个中介所,所述中介所是脉 冲序列的各个序列模块能够提供的自身信息的集合。当执行所述序列模块时,如果确定执 行所述序列模块需要其它序列模块的信息,可以根据需要去调用所述中介所中所述其它序 列模块的信息,而无需重复遍历剩余的节点或将所需要的节点引用到自身对象里,在保持 序列模块可复用性和灵活性的同时,又提高了脉冲序列的执行效率。 进一步地,所述序列模块需要的其它序列模块的信息可以全部从中介所中获得, 也可以部分从中介所中获得,当所述其它序列模块与所述序列模块存在递归关系时,不需 要从中介所中调用信息,使得所述脉冲序列在执行本文档来自技高网...
【技术保护点】
一种控制脉冲序列执行的方法,所述脉冲序列包括若干个序列模块,所述序列模块包括至少一个序列单元,其特征在于,所述方法包括:接收用户执行所述脉冲序列的指令;根据所述执行脉冲序列的指令,按照所述序列模块的排列顺序,根据需要调用预先建立的中介所的信息,依次控制所述序列模块执行;所述中介所包括各个序列模块所提供的自身信息。
【技术特征摘要】
【专利技术属性】
技术研发人员:王振奎,王丽丽,
申请(专利权)人:上海联影医疗科技有限公司,
类型:发明
国别省市:上海;31
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。