编程
移动与射击
这个作者很懒,什么都没留下…
展开
-
Doubango runnable使用方法
Doubango runnable笔记下面是关于runnable的测试用例,解释了runnable的使用方法。runnable实现了这样一种机制: 启动runnable后,即启动一个线程,在线程运行上下文中处理放入runnable中的链表中的对象。 放入对象的线程上下文是调用runnable的线程(一般是主线程)。其中,runnable有个属性important, 意思就是: “if ye原创 2012-05-14 22:30:41 · 1547 阅读 · 0 评论 -
Doubango 定时器管理用法
Doubango timer笔记 下面是Doubango定时器管理器的测试用例,说明了其用法。定时器管理器实现了: 通过创建两个线程,实现多个定时器管理,当定时时间到了后,调用定时器的回调函数。基本实现原理大致是这样。按定时时间,将定时器排序,取出最小的那个定时器(最近即将发生的那个),比较当前时间,若还差时间,进行等待(Windows下调用WaitForSingleObjec实现,Lin原创 2012-05-15 10:36:34 · 987 阅读 · 0 评论 -
控制反转与java thread使用方法
早些年学习面向对象编程时候,好像没有“控制反转”概念。越来越多的编程和框架用到这个概念(Spring, Android等等),下面是摘自维基百科的资料和Java教材中Thread的使用放在一起,可以好好体会下这个概念。控制反转(英语:Inversion of control,缩写为IoC),也叫做依赖注入(Dependency Injection,简称DI),是面向对象编程中的一种设计原创 2012-02-15 23:07:30 · 5196 阅读 · 0 评论 -
doubango ANSI-C 对象编程的实现方法
doubango 3GPP IMS/LTE Framework v1.0.0 Programmer’s Guide正如你知道的,C语言不是一个面向对象的语言。今天,OOP(面向对象编程)是编写精心设计的软件的最好方式。在这份文档中“被定义的对象”是指一个特殊的C语言结构体。本文中的所有功能是tinySAK项目的一部分。为了解释如何定义对象及如何使用对象,我会使用一个基于“人”的翻译 2012-03-14 17:36:40 · 1107 阅读 · 0 评论 -
Yate开源软件Jabberclient模块接收Spark即时消息示例
使用Spark向Yate发送即时消息,在Yate侧收到信息如下: Receiving from 'agilevideo' [01388938]-----mcu01@agilevideo" from="mcudma@agilevideo/Spark 2.6.3" type="chat"> hi 26XX47 ----- Pro原创 2012-01-12 17:18:51 · 945 阅读 · 0 评论 -
webrtc中BEGIN_PROXY_MAP代码功能介绍
BEGIN_PROXY_MAP(VideoSource)开始声明VideoSourceProxy类,包括构造函数、析构函数和静态成员函数Create()。VideoSourceProxy继承VideoSourceInterface类。静态成员函数Create()创建一个VideoSourceProxy对象,并返回指针。PROXY_METHOD0(r, method)将方法met原创 2014-03-21 18:39:23 · 1736 阅读 · 0 评论 -
如何改变Tab Control的颜色
搜罗了一下,还没有发现完整的描述资料,这里简单描述一下自己摸索的思路。要改变Tab Control的颜色,首先了解Tab Control的组成:Tab页头,Tab页和背景。所以需要同时改变这三个部分颜色,才能达到目的。关键词: MFC, C/C++, GUI1)改变Tab页头的颜色这部分可参考MSDN的资料,这里不再重复。 http://support.microsoft.com/kb/179909/en-us How To Change the Background Color of a Tab Cont原创 2011-04-06 14:46:00 · 10038 阅读 · 2 评论 -
[x264]int16_t (*mv[2])[2]的含义
指包含两个指针的数组,每个指针指向的是包含int16_t[2] 的数组。这里注意,sizeof(mv) = 8 (每个指针是4个字节,有两个指针)mv相当于二维数组的行指针。而 int16_t *a[2][2] 中 sizeof(a) = 16参考1原创 2011-09-12 23:45:31 · 1453 阅读 · 0 评论 -
vs2010出现编译错误 fatal error C1189: #error : Need to include strsafe.h after tchar.h
问题:vs2010出现编译错误 fatal error C1189: #error : Need to include strsafe.h after tchar.h解决办法:在include之前增加#include #include转载 2011-09-22 23:21:57 · 5826 阅读 · 0 评论 -
macro redefinition警告或错误的解决方法
Windows下使用VS2008编译时经常遇到macro redefinition警告或错误,如:c:\programme\microsoft sdks\windows\v6.0a\include\ws2def.h(91) : warning C4005: 'AF_IPX'原创 2011-10-09 19:36:48 · 33696 阅读 · 0 评论 -
Signals、sigslot简介
在复杂的工程中,整个系统被分为数个模块,每个模块提供有限的功能,由上层调用从而组成整个系统,为了保证每个模块的独立性,我们经常限制模块与模块之间直接联系,每个模块只提供有限的API或Com接口,内部完全封装起来。有时候两个不同的逻辑层的模块需要通信,如果直接include头文件会使项目变的复杂,sigslot的出现为我们提供了一种解决问题的思想,它用“信号”的概念实现不同模块之间的传输问题,s转载 2011-11-01 23:04:56 · 939 阅读 · 0 评论 -
嵌入式系统中圆角矩形填充的一种实现思路
关键词:anti-aliasing 反锯齿| 抗锯齿| 反走样| 抗锯齿处理相关开源项目: freetype,libart1 概述 本文介绍了一种绘制带圆角的矩形区域的思路,即在内存上或者一个图片上画一个带圆角的矩形区域,可以应用在嵌入式系统中自己实现按钮或者OSD菜单等。2 关键问题 画圆弧的关键是实现抗锯齿,即使圆弧看的比较圆润些。3 技术路线 1原创 2012-01-24 11:31:04 · 1279 阅读 · 0 评论 -
Regexp使用示例(C++代码)
1 判断一个字符串是否为ip地址:Regexp reg("^[0-9]\\{1,3\\}\\.[0-9]\\{1,3\\}\\.[0-9]\\{1,3\\}\\.[0-9]\\{1,3\\}$");String ip="192.168.1.222";bool match=false;match = ip.matches(reg); // true待续....附录—原创 2012-02-21 15:18:09 · 1610 阅读 · 0 评论 -
Singletons vs. Application Context in Android?
Android应用程序中,关于保存全局数据是使用Singletons还是Application对象的一些讨论:(注明都是网上和书中摘录,为了好看的绿色,妄称原创,见谅!)Singletons are a nightmare for testing and, if lazily initialized, will introduce "state indeterminism" with su原创 2012-02-22 21:23:36 · 896 阅读 · 0 评论 -
webrtc中的MethodCall0代码功能分析
MethodCall0实现了这样一个功能:将一个类对象的成员函数(无参数)放在某个线程上下文执行,并返回结果。涉及到webRTC的类有:Message, MessageHandler, Thread, ReturnType调用例子:下例是将proxy对象的Release_s方法放在thread执行上下文执行。VideoSourceProxy *proxy;talk_base原创 2014-03-21 09:31:35 · 1096 阅读 · 0 评论