Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
尘离序散
obs-studio
提交
06227327
O
obs-studio
项目概览
尘离序散
/
obs-studio
与 Fork 源项目一致
从无法访问的项目Fork
通知
30
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
O
obs-studio
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
06227327
编写于
12月 16, 2013
作者:
P
Palana
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
updated c++11 compatibility for raii wrappers
上级
42375302
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
34 addition
and
8 deletion
+34
-8
obs/obs-wrappers.hpp
obs/obs-wrappers.hpp
+29
-6
obs/wx-wrappers.hpp
obs/wx-wrappers.hpp
+5
-2
未找到文件。
obs/obs-wrappers.hpp
浏览文件 @
06227327
...
...
@@ -29,12 +29,16 @@
template
<
typename
T
>
class
BPtr
{
T
ptr
;
BPtr
(
BPtr
const
&
)
=
delete
;
BPtr
&
operator
=
(
BPtr
const
&
)
=
delete
;
public:
inline
BPtr
(
)
:
ptr
(
NULL
)
{}
inline
BPtr
(
T
p
)
:
ptr
(
p
)
{
}
inline
~
BPtr
()
{
bfree
(
ptr
);}
inline
BPtr
(
T
p
=
nullptr
)
:
ptr
(
p
)
{}
inline
BPtr
(
BPtr
&&
other
)
:
ptr
(
other
.
ptr
)
{
other
.
ptr
=
nullptr
;
}
inline
~
BPtr
()
{
bfree
(
ptr
);}
inline
T
operator
=
(
T
p
)
{
bfree
(
ptr
);
ptr
=
p
;}
inline
T
operator
=
(
T
p
)
{
bfree
(
ptr
);
ptr
=
p
;
return
p
;
}
inline
operator
T
()
{
return
ptr
;}
inline
T
*
operator
&
()
{
bfree
(
ptr
);
ptr
=
NULL
;
return
&
ptr
;}
...
...
@@ -46,8 +50,15 @@ public:
class
ConfigFile
{
config_t
config
;
ConfigFile
(
ConfigFile
const
&
)
=
delete
;
ConfigFile
&
operator
=
(
ConfigFile
const
&
)
=
delete
;
public:
inline
ConfigFile
()
:
config
(
NULL
)
{}
inline
ConfigFile
(
ConfigFile
&&
other
)
:
config
(
other
.
config
)
{
other
.
config
=
nullptr
;
}
inline
~
ConfigFile
()
{
config_close
(
config
);
...
...
@@ -83,9 +94,16 @@ public:
class
TextLookup
{
lookup_t
lookup
;
TextLookup
(
TextLookup
const
&
)
=
delete
;
TextLookup
&
operator
=
(
TextLookup
const
&
)
=
delete
;
public:
inline
TextLookup
()
:
lookup
(
NULL
)
{}
inline
TextLookup
(
lookup_t
lookup
)
:
lookup
(
lookup
)
{}
inline
TextLookup
(
lookup_t
lookup
=
nullptr
)
:
lookup
(
lookup
)
{}
inline
TextLookup
(
TextLookup
&&
other
)
:
lookup
(
other
.
lookup
)
{
other
.
lookup
=
nullptr
;
}
inline
~
TextLookup
()
{
text_lookup_destroy
(
lookup
);}
inline
TextLookup
&
operator
=
(
lookup_t
val
)
...
...
@@ -110,6 +128,11 @@ public:
class
OBSSource
{
obs_source_t
source
;
OBSSource
(
OBSSource
&&
)
=
delete
;
OBSSource
(
OBSSource
const
&
)
=
delete
;
OBSSource
&
operator
=
(
OBSSource
const
&
)
=
delete
;
public:
inline
OBSSource
(
obs_source_t
source
)
:
source
(
source
)
{}
inline
~
OBSSource
()
{
obs_source_release
(
source
);}
...
...
obs/wx-wrappers.hpp
浏览文件 @
06227327
...
...
@@ -41,6 +41,10 @@ class WXConnector {
wxObject
*
userData
;
wxEvtHandler
*
eventSink
;
WXConnector
(
WXConnector
const
&
)
=
delete
;
WXConnector
&
operator
=
(
WXConnector
const
&
)
=
delete
;
public:
inline
WXConnector
()
:
obj
(
NULL
),
...
...
@@ -110,7 +114,6 @@ public:
wxObjectEventFunction
func
,
wxObject
*
userData
,
wxEvtHandler
*
eventSink
)
{
WXConnector
connector
(
obj
,
type
,
func
,
userData
,
eventSink
);
connectors
.
push_back
(
std
::
move
(
connector
));
connectors
.
emplace_back
(
obj
,
type
,
func
,
userData
,
eventSink
);
}
};
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录