插件相关
文章平均质量分 92
lclflash
这个作者很懒,什么都没留下…
展开
-
Qt插件机制的学习
Mesh Deformer的架 构若想参照OpenFlipper来实现,首先需要了解Qt plugin system的结构以及如何编写qt plugins.以下摘抄了Qt文档中的部分内容(只与自己想要实现的功能相关的内容)The Lower-Level API: Extending Qt ApplicationsNot only Qt itself but also Qt转载 2013-04-26 22:31:14 · 764 阅读 · 0 评论 -
Simple Plug-in Architecture in Plain C
IntroductionThis article explains how to write an application using architecture that supports plug-ins. We would be doing this using plain C. The concepts that are explained can be used to implemen转载 2013-04-26 23:06:49 · 876 阅读 · 0 评论 -
POCO Universal Plug and Play
Universal Plug and PlayA modular and extensible C++ framework for implementing UPnP™ capable devices and applications. Based on the POCO C++ Libraries and the Applied Informatics Remoting framew原创 2013-04-26 23:01:25 · 910 阅读 · 0 评论 -
C++ 插件框架 Pluma Framework
Pluma 是一个开源的C++插件管理框架,以助于在应用程序中动态载入DLL而无需在意内部实现,它是轻量级、简化设计的。主要特性有:A 高品质: 面向对象 跨平台; 易于使用; 容易集成;B 富功能: 动态载入插件(DLL); 使用工厂模式(Factory Pattern); 插件版本控制转载 2013-04-26 22:54:27 · 6487 阅读 · 0 评论 -
插件式设计的架构模型与实例
插件式设计的架构模型与实例----Do not call us, we will call you 转载时请注明出处:http://blog.csdn.net/absurd插件式设计近年来非常流行,其中eclipse起了推波助澜的作用,提到插件式就会不由自主的想到eclipse。其实插件式设计并不是什么新事物,早在几十年前就有了。像X Server就是基于插件式设计的转载 2013-04-26 22:51:38 · 982 阅读 · 0 评论 -
构建自己的C/C++插件开发框架(二)——总体功能
在这一系列的上一个文章中,介绍了构建C/C++插件开发框架的初步设想,下面我会一步步的向下展开,来实现我的这个设想。今天主要谈一下我对这个框架的功能认识,或是期望。昨天看了一篇关于持续集成能力成熟度模型 的一篇文章,受此启发,我对此框架的认识渐渐清晰。这个框架可以当做我们公司底层产品(交换机,资源服务器等)的基础设施。上层基于java开发的产品可以直接在OSGI上开发。 核心功能:转载 2013-04-26 22:40:31 · 592 阅读 · 0 评论 -
轻量级C++插件框架 x3py 可以用了
(推荐)X3PY: https://github.com/rhcad/x3py Doc: https://github.com/rhcad/x3py/wiki(内容较多)对x3c框架进行大量简化重构而成,使用方法类似于x3c,调用关系和文件依赖关系更简单直接,增加了与Python、Perl、Java、C#等集成开发的功能。在下列平台测试通过: Wind转载 2013-04-26 22:32:45 · 1594 阅读 · 0 评论 -
QT中插件分析
QT有着独特的插件管理方法便于使用,调理清晰.完全可以替代WIN32下的动态库,静态库.不过,QT也支持动态库和静态库加载.见QLibrary,最终,QLibrary调用WIN32下的LoadLibrary,GetProcAddress函数.Qt插件的使用方法:[1]project_main_1工程中定义接口class interface__1{publ转载 2013-04-26 22:23:46 · 1021 阅读 · 0 评论 -
Building Your Own Plugin Framework
Building Your Own Plugin FrameworkA cross-platform plugin framework for C/C++Dr. Dobb's - November 25, 2007Gigi SayfanFrom ddj.comGigi Sayfan specializes in cross-platform object-ori转载 2013-04-26 23:03:43 · 2129 阅读 · 0 评论 -
用C++实现插件体系结构
本文讨论一种简单却有效的插件体系结构,它使用C++,动态链接库,基于面向对象编程的思想。首先来看一下使用插件机制能给我们带来哪些方面的好处,从而在适当时候合理的选择使用。1. 增强代码的透明度与一致性:因为插件通常会封装第三方类库或是其他人编写的代码,需要清晰地定义出接口,用清晰一致的接口来面对所有事情。你的代码也不会被转换程序或是库的特殊定制需求弄得乱七糟。2. 改善工程转载 2013-04-26 22:43:11 · 757 阅读 · 0 评论 -
构建自己的C/C++插件开发框架(三)——总体结构
几天为了设计插件开发框架,尝试用了一下发散思维来思考问题。中间看过依赖注入,AOP(面向方面编程),以及契约式设计等。虽然有些工具无法直接使用,但是这些思想还是可以借鉴的,比如依赖注入,契约式设计。至于AOP,和工具相关性较大,虽然思想不错,但是无法直接在C++中使用。我设计的插件间的依赖不是通过接口实现的,而是通过插件间的数据(信元流)。而信元流的检测可以使用契约来检查。插件开发转载 2013-04-26 22:41:02 · 633 阅读 · 0 评论 -
构建自己的C/C++插件开发框架(一)——初步设想
最近一直在学习OSGI方面的知识。买了一本《OSGI原理和最佳实践》,可是还没有到。遗憾的是,OSGI目前的几个开源框架只支持Java,对C和C++都不支持的。可惜我们公司目前主要的开发语言还是c和c++,即便是引进OSGI,所得的好处范围有限。而我对松散耦合的模块化开发向往已久。查了一下OSGI对C++支持的好像是有一个开源项目,不过好像应用范围很小。而SCA标准中是有对C++实现模型的支持的,转载 2013-04-26 22:40:05 · 735 阅读 · 0 评论 -
Qt 插件学习(一)
插件是什么注意:这儿暂时不考虑静态插件(潜意识中总觉得它根本就不算插件)。插件是一个动态库(共享库)。动态库是一个独立的文件中的独立模块,可被多个程序访问。先看动态库的两种用法1. 程序链接时指明动态库这时程序中包含相应的头文件,编译时指定头文件路径,对于qmake来说:LIBS += -L/path1/path2/.../ -labcdIN转载 2013-04-26 22:28:11 · 822 阅读 · 0 评论 -
C++编写动态插件应注意的问题
C++编写动态插件应注意的问题 2012-02-13 11:30:32| 分类: VC++ & MFC|字号 订阅1- 插件导出函数设计成C形式的也就是在函数前加 extern "C",这样保证动态连接的时候不会出现找不到名字的情况. 2- 一定要保证代码绝缘,中间接口一定要传递NATURAL类型或者纯虚指针,否则会因为一些细微的类转载 2013-04-26 22:56:13 · 665 阅读 · 0 评论 -
C++插件机制的一种实现方法(对象工厂)
背景在我们的实际开发过程中,经常会开发一些插件,比较常见的例子如:给你 DataHandler,它是一个抽象类,提供一些数据操作的接口,然后插件开发者就需要继承DataHandler,并按需求实现对应的接口,将其作为插件,编译到最终的二进制程序中,最后通过配置文件指定生效该插件。帮助1234567转载 2013-04-26 22:49:30 · 1907 阅读 · 0 评论 -
构建自己的C/C++插件开发框架(四)——核心层设计和实现
上面一篇文章大致描述了一下插件开发框架整体结构。这篇描述一下核心层的设计和实现。至于核心层的设计,我想借鉴 一下微内核的思想。核心层只负责实现下面几个功能:1、 插件的加载,检测,初始化。 2、 服务的注册。 3、 服务的调用。 4、 服务的管理。 插件的加载,检测,初始化 插件的加载利用linux共享库的动态加载技术。具体的方法可以看一下IBM网站的一转载 2013-04-26 22:41:35 · 745 阅读 · 0 评论 -
UNIX下C++实现动态载入对象
VC里面实现动态对象载入已经不是什么新鲜事情了,很多的plug-in技术就是例子。Unix下,通过动态载入so获得一个对象也不是什么难事,不过对这个对象的管理就是一件比较麻烦的事情了。一般的需求如下: 有class TMyObj,准确说TMyObj应该是一个接口,根据不同具体情况会有不同的实现,例如 TMyObj1、TMyObj2等等……而这些TMyObj1和TMyObj2分别保存在不同的s转载 2013-04-26 22:37:07 · 561 阅读 · 0 评论 -
linux下C++ 插件(plugin)实现技术
应用程序中使用插件技术,有利于日后的版本更新、维护(比如打补丁)和功能扩展,是一种很实用的技术。其最大的特点是更新插件时无需重新编译主程序,对于一个设计良好的应用系统而言,甚至可以做到业务功能的在线升级。本文介绍了linux下用C++实现插件的一个简单实例,希望能对大家有所启发。为了能做到更新插件时无需重新编译主程序,要求主程序中定义的接口是定死的,而接口的实现被放到了具体的插件中,这样主转载 2013-04-26 22:37:51 · 781 阅读 · 0 评论 -
DynObj - C++ Cross Platform Plugin Objects
By Arne Steinarson, 27 Sep 2007 4.95 (32 votes) Download DynObj demo - 241.8 KBDownload DynObj source - 614.5转载 2013-04-26 23:07:27 · 1840 阅读 · 0 评论