QtGStreamer
1.2.0
QGst
memory.h
1
/*
2
Copyright (C) 2014 Diane Trout <diane@ghic.org>
3
4
This library is free software; you can redistribute it and/or modify
5
it under the terms of the GNU Lesser General Public License as published
6
by the Free Software Foundation; either version 2.1 of the License, or
7
(at your option) any later version.
8
9
This program is distributed in the hope that it will be useful,
10
but WITHOUT ANY WARRANTY; without even the implied warranty of
11
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
GNU Lesser General Public License for more details.
13
14
You should have received a copy of the GNU Lesser General Public License
15
along with this program. If not, see <http://www.gnu.org/licenses/>.
16
*/
17
#ifndef QGST_MEMORY_H
18
#define QGST_MEMORY_H
19
20
#include "global.h"
21
#include "miniobject.h"
22
23
namespace
QGst
{
24
25
class
QTGSTREAMER_EXPORT MapInfo
26
{
27
public
:
28
MapInfo();
29
virtual
~MapInfo();
30
31
MapFlags flags()
const
;
32
quint8 *data()
const
;
33
size_t
size()
const
;
34
size_t
maxSize()
const
;
35
36
private
:
37
friend
class
Buffer;
38
friend
class
Memory;
39
Q_DISABLE_COPY(MapInfo);
40
41
void
*m_object;
42
};
43
51
class
QTGSTREAMER_EXPORT
Memory
:
public
MiniObject
52
{
53
QGST_WRAPPER(
Memory
)
54
public
:
55
QGst::AllocatorPtr
allocator()
const
;
56
57
size_t
size()
const
;
58
size_t
offset()
const
;
59
size_t
maxSize()
const
;
60
61
bool
isType(
const
char
*type)
const
;
62
63
bool
map(MapInfo &info, MapFlags flags);
64
void
unmap(MapInfo &info);
65
};
66
67
}
// namespace QGst
68
69
QGST_REGISTER_TYPE(
QGst::Memory
)
70
71
#endif
QGst::Memory
Wrapper class for GstMemory.
Definition:
memory.h:51
QGst::MiniObject
Wrapper class for GstMiniObject.
Definition:
miniobject.h:29
QGst
Wrappers for GStreamer classes.
QGlib::RefPointer
Smart pointer class for working with wrapper classes that support reference counting.
Definition:
global.h:56
Generated by
1.8.17