登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

图像处理 视频分析 机器视觉 模式识别

方向比努力更重要

 
 
 

日志

 
 
关于我

河北软件开发项目,电子警察卡口项目,公安天网项目,媒体流处理,数字图像处理。媒体服务器 RTSP、图像处理、车牌识别……DCT变换,H.264压缩

跨平台库--PWLib入门  

2011-07-21 11:21:18|  分类: gcc|make |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

PWLibPortable Windows Library的缩写,翻译为轻便的Windows类库.PWLib采用C++编写,设计初衷是为了能让Openh323WindowsUnixX-Windows下运行, 不过随着步步的完善PWLib已经被跨平台的程序所广泛采用.在最新的Pandora版本中,Equivalence已经停止了PWLibGUI部分的开发,全面转向了更能为Openh323所利用的PTLib,GUI部分交给了wxWindows来完成.PWLib主要功能侧向网络,I/O和多线程,主要用在高性能的可移植网络程序.


PWLib分为两部分:基类部分和控制台部分.基类部分主要包括网络,多线程,ASN...,所有使用PWLib的应用程序必然用到基类部分.而控制台部分则定义了一些基本的数据和设备类型,它是可选的,不过要方便移植的话还是要用到它.
下面从Hello World开始说PWLib框架:
#include <ptlib.h>                        //
所用使用PWLib都用包含的头文件


class Hello : public PProcess          //继承主线程类PProcess
{
  PCLASSINFO(Hello, PProcess)     //
连接PProcess的运行时函数
  public:
        void Main();                          //
主线程是从PProcessMain()开始的
};


PCREATE_PROCESS(Hello)           //定义Main()函数和初始化Hello


void Hello::Main()
{
  cout << "Hello world!\n";    
}
下面详细介绍各个类:
基本对象类:
PObject - PWLib
中的根类,所有的类都派生于此
PContainer -
抽象容器类
PAbstractArray -
所有数组对象的基类
PAbstractList -
所有列表对象的基类
PAbstractDictionary -
字典对象的基类
PString -
字符类,Openh323中随处可见


I/O通道类
PChannel - I/O
通道的基类,下面类都派生于此
PIndirectChannel -
可以交换的操作不同的I/O通道
PConsoleChannel -
进入系统命令行的通道
PPipeChannel -
在当前进程和子进程剪建立管道
PSerialChannel -
串口通信通道
PFile -
文件操作类.
PTextFile -
文本文件操作类
PStructuredFile -
结构文件操作类,不同操作文件类型都不尽相同
PFilePath -
对文件的路径描述的类
PVideoChannel -
视频的输入,输出通道,采用YUV格式
PSoundChannel -
音频的输入,输出通道,使用线性的PCM通道


套接字类:
PSocket -
套接字的基类,所有网络操作类派生于此
PIPSocket - IP
协议层的描述类
PUDPSocket - IP
协议中UDP描述类
PTCPSocket - IP
协议中TCP/IP描述类 
PICMPSocket - IP
协议中ICMP描述类
PIPXSocket - IPX
协议的基类
PEthSocket -
底层的以为网接口类,可以直接操作底层数据包


进程和线程类
PProcess -
实现程序的主线程控制类
PServiceProcess -
后台程序或系统进程使用的类
PThread -
普通线程的控制类
PSemaphore -
使用信号量的线程同步类
PMutex -
使用互斥对象的线程同步类
PCriticalSection -
使用临界区的线程同步类
PSyncPoint -
使用事件的线程同步类
PAtomicInteger -
描述了信号量及PV操作


其他杂类:
PArgList -
命令行参数类
PConfig -
存储应用程序的配置内容
PTime -
时间和日期的抽象类
PTimeInterval -
毫秒为单位的记时类
PDynaLink -
动态连接类
PRemoteConnection -
网络连接控制类
PMail -
调用系统默认程序发邮件
PPluginManager -
插件管理模块
PSmartPointer -
智能指令类
PNotifier -
通告类,可以调用任何类的任何函数
PSmartNotifierFunction -
智能的通告函数类,使用对象ID


控制台部分:


HTTP协议类:
PHTTP - HTTP
协议基类
PURL - URL
的具体描述
PHTML - HTML
的具体描述
PHTTPServiceProcess -
后台的HTTP服务程序类


其他协议类
PInternetProtocol - Interner
文本协议基类
PPOP3 - POP3
协议的基类
PSMTMP - SMTP
协议的基类
PFTP - FTP
协议的基类
PMIMEInfo -
描述MIME信息
PTelnetSocket -
描述TELNET协议
PSocksProtocol - Socks
协议的基类
PSTUNClient -
实现STUN登陆操作
PSNMP - SNMP
协议的基类
PSSLChannel -
OpenSSL基础上建立的SSL协议类
PSASL -
Cyrus SASL基础上建立的SAS协议L
PXMLRPC -
XMLHTTP基础上建立的XMLRPC协议描述
PSOAPClient -
实现SOAP登陆
PLDAPSession -
使用OpenLDAP进行LDAP登陆
PILSSession -
使用OpenLDAP进行ILS登陆
XMPP::Stream -
实现XMPP(Jabber)


其他杂类:
PModem -
操作Modem,使用AT命令和Modem串口通信
PIpAccessControlList -
子网掩码的描述
PRandom -
产生随机数类
PCypher -
不同编码的解码和编码
PWAVFile - AIFF
格式的WAV文件操作类
PDTMFDecoder -
PCM流进行DTMF解码
PMemoryFile -
让数据存储在内存中
PSDLVideoDevice -
使用SDL库实现视频设备
PXML - XML
解析器
PVXMLChannel - VXML
的解析器

  评论这张
 
阅读(657)| 评论(0)

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018