您的位置:首页 > 其它

ONE源码阅读之输入模型和运动模型

2012-08-28 12:07 281 查看
输入模型:

ONE仿真系统中,定时产生仿真消息的实现在MessageEventGenerator。首先,它是一个事件队列EventQueue(接口)。MessageEventGenerator通过实现nextEvent来产生一个事件MessageCreateEvent,同时产生一个随机时间n,直到过了n个嘀嗒后才产生下一个事件,这样的话,仿真器只需要在合适的时候调用nextEvent获取一个事件,并处理这个事件即可。

那么怎么产生事件呢?MessageCreateEvent是创建一个仿真消息的事件,继承只externEvent,提供processEvent接口。只要创建一个MessageCreateEvent对象即可。在processEvent的实现中,创建一个消息,这样,在仿真器处理事件的时候即可创建一个仿真消息。(确实非常感慨老外的设计能力,整个系统设计的非常的巧妙)

运动模型:

运动模型告诉host节点在每个嘀嗒该如何运动。以RandomWaypoint为例,该类必须实现了一个getPath接口,这个接口用于提供一个path路径,即运动路径。path路径即由很多很多点组成的一个动态数组。在节点中,每个嘀嗒根据path的路径进行运动,当path中的点集为空时,重新从运动模型获取一个新的path。这样,运动模型只负责生成path,而host只负责遍历path并根据path运动即可。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: