本文主要是介绍Yate设计,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
转自:http://blog.csdn.net/tttyd/article/details/6153208
From: http://yate.null.ro/pmwiki/index.php?n=Main.Design
The purpose of Yate's design is to provide an extensible telephony engine. Holding the base code as simple as possible and adding functionality as needed allows one to find the best balance between desired functionality, performance and stability.
Yate的设计目标是为了提供一个可扩展性的电话引擎,试图以最简简洁的代码,在扩展所需功能与性能、稳定性之间达到最佳平衡。
Engine
The engine holds the base C++ classes of Yate and connects together all components. There is a diagramshowing how all components interact.
该引擎基于Yate的C++类,将所有组件连接在一起工作。以下图表描述了组件之间的交互过程。
Modules
Most real functionality is provided by modules loaded at runtime. These can be dynamical libraries loaded as plugins in the engine or external applications started by a specific module (extmodule ) that allows them to talk to the engine and other modules.
大部分功能由运行时加载的模块实现。这些模块以动态链接库为载体,作为插件被引擎或外部程序加载,模块与引擎、模块与模块之间可相互通信。
Messages
The signaling between Yate modules (either plugins or external modules) is performed by using messages . They provide extensibility, customization and technology independence. Each module that needs something from another or tries to notify about some event creates and emits a message. The message flows through the Engine which tries to deliver it to the proper target.
模块(包括插件或外部模块)之间的通信通过消息来实现。消息机制是可扩展的、可定制的且技术独立的。模块通过创建、发送消息的方式通知其他模块或接受其他模块的发送的信息。消息流通过引擎总会发送到恰当的目标中。
这篇关于Yate设计的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!