author | hgs |
Fri, 03 Sep 2010 20:07:59 -0500 | |
changeset 58 | c76ea6caa649 |
parent 50 | 762d760dcfdf |
permissions | -rw-r--r-- |
27
cbb1bfb7ebfb
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
1 |
/* |
cbb1bfb7ebfb
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
2 |
* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). |
cbb1bfb7ebfb
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
3 |
* All rights reserved. |
cbb1bfb7ebfb
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
4 |
* This component and the accompanying materials are made available |
cbb1bfb7ebfb
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
5 |
* under the terms of "Eclipse Public License v1.0" |
cbb1bfb7ebfb
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
6 |
* which accompanies this distribution, and is available |
cbb1bfb7ebfb
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
7 |
* at the URL "http://www.eclipse.org/legal/epl-v10.html". |
cbb1bfb7ebfb
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
8 |
* |
cbb1bfb7ebfb
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
9 |
* Initial Contributors: |
cbb1bfb7ebfb
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
10 |
* Nokia Corporation - initial contribution. |
cbb1bfb7ebfb
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
11 |
* |
cbb1bfb7ebfb
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
12 |
* Contributors: |
cbb1bfb7ebfb
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
13 |
* |
cbb1bfb7ebfb
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
14 |
* Description: QT Bindings for TMS |
cbb1bfb7ebfb
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
15 |
* |
cbb1bfb7ebfb
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
16 |
*/ |
cbb1bfb7ebfb
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
17 |
|
cbb1bfb7ebfb
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
18 |
#include <qtms.h> |
32
edd273b3192a
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
27
diff
changeset
|
19 |
#include <tmsbuffer.h> |
40 | 20 |
#include "tmsutility.h" |
27
cbb1bfb7ebfb
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
21 |
#include "qtmsmembuffer.h" |
cbb1bfb7ebfb
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
22 |
|
cbb1bfb7ebfb
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
23 |
using namespace QTMS; |
cbb1bfb7ebfb
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
24 |
using namespace TMS; |
cbb1bfb7ebfb
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
25 |
|
32
edd273b3192a
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
27
diff
changeset
|
26 |
QTMSMemBuffer::QTMSMemBuffer() |
50 | 27 |
{ |
40 | 28 |
iTmsBuffer = NULL; |
29 |
iOwnsBuffer = FALSE; |
|
50 | 30 |
} |
27
cbb1bfb7ebfb
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
31 |
|
cbb1bfb7ebfb
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
32 |
QTMSMemBuffer::~QTMSMemBuffer() |
50 | 33 |
{ |
34 |
if (iOwnsBuffer) { |
|
40 | 35 |
free(iDataPtr); |
27
cbb1bfb7ebfb
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
36 |
} |
50 | 37 |
} |
27
cbb1bfb7ebfb
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
38 |
|
40 | 39 |
gint QTMSMemBuffer::Create(QTMSBuffer*& buffer, TMS::TMSBuffer*& tmsbuffer) |
50 | 40 |
{ |
40 | 41 |
gint ret(QTMS_RESULT_INSUFFICIENT_MEMORY); |
32
edd273b3192a
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
27
diff
changeset
|
42 |
TRACE_PRN_FN_ENT; |
27
cbb1bfb7ebfb
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
43 |
QTMSMemBuffer* self = new QTMSMemBuffer(); |
50 | 44 |
if (self) { |
40 | 45 |
self->iTmsBuffer = tmsbuffer; |
46 |
tmsbuffer->GetDataPtr(self->iDataPtr); |
|
47 |
tmsbuffer->GetDataSize(self->iBufferSize); |
|
48 |
tmsbuffer->GetTimeStamp(self->iTimeStamp); |
|
49 |
self->iOwnsBuffer = FALSE; |
|
50 | 50 |
ret = QTMS_RESULT_SUCCESS; |
51 |
} |
|
40 | 52 |
buffer = self; |
27
cbb1bfb7ebfb
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
53 |
TRACE_PRN_FN_EXT; |
cbb1bfb7ebfb
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
54 |
return ret; |
50 | 55 |
} |
27
cbb1bfb7ebfb
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
56 |
|
cbb1bfb7ebfb
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
57 |
gint QTMSMemBuffer::GetType(QTMSBufferType& buffertype) |
50 | 58 |
{ |
40 | 59 |
gint ret(TMS_RESULT_SUCCESS); |
60 |
buffertype = QTMS_BUFFER_MEMORY; |
|
27
cbb1bfb7ebfb
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
61 |
return ret; |
50 | 62 |
} |
27
cbb1bfb7ebfb
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
63 |
|
cbb1bfb7ebfb
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
64 |
/** |
32
edd273b3192a
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
27
diff
changeset
|
65 |
* Gets the timestamp on the Buffer so that the framework can |
edd273b3192a
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
27
diff
changeset
|
66 |
* determine the time at which this buffer has to be rendered |
edd273b3192a
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
27
diff
changeset
|
67 |
* by the output device sink. |
edd273b3192a
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
27
diff
changeset
|
68 |
* |
edd273b3192a
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
27
diff
changeset
|
69 |
* @param ts timestamp in microseconds |
edd273b3192a
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
27
diff
changeset
|
70 |
* |
edd273b3192a
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
27
diff
changeset
|
71 |
*/ |
edd273b3192a
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
27
diff
changeset
|
72 |
gint QTMSMemBuffer::GetTimeStamp(guint64& ts) |
50 | 73 |
{ |
40 | 74 |
gint ret(QTMS_RESULT_SUCCESS); |
75 |
ts = iTimeStamp; |
|
32
edd273b3192a
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
27
diff
changeset
|
76 |
return ret; |
50 | 77 |
} |
27
cbb1bfb7ebfb
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
78 |
|
32
edd273b3192a
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
27
diff
changeset
|
79 |
/** |
edd273b3192a
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
27
diff
changeset
|
80 |
* Sets the timestamp on the Buffer so that the framework can |
edd273b3192a
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
27
diff
changeset
|
81 |
* determine the time at which this buffer has to be rendered |
edd273b3192a
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
27
diff
changeset
|
82 |
* by the output device sink. |
edd273b3192a
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
27
diff
changeset
|
83 |
* |
edd273b3192a
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
27
diff
changeset
|
84 |
* @param ts timestamp in milliseconds |
edd273b3192a
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
27
diff
changeset
|
85 |
* |
27
cbb1bfb7ebfb
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
86 |
*/ |
cbb1bfb7ebfb
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
87 |
gint QTMSMemBuffer::SetTimeStamp(const guint64 ts) |
50 | 88 |
{ |
40 | 89 |
gint ret(QTMS_RESULT_SUCCESS); |
90 |
iTimeStamp = ts; |
|
91 |
ret = iTmsBuffer->SetTimeStamp(ts); |
|
27
cbb1bfb7ebfb
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
92 |
return ret; |
50 | 93 |
} |
27
cbb1bfb7ebfb
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
94 |
|
cbb1bfb7ebfb
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
95 |
/** |
32
edd273b3192a
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
27
diff
changeset
|
96 |
* Gets the size of data in the buffer specified by the client. |
edd273b3192a
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
27
diff
changeset
|
97 |
* |
edd273b3192a
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
27
diff
changeset
|
98 |
* @param size size of data in bytes |
edd273b3192a
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
27
diff
changeset
|
99 |
* |
27
cbb1bfb7ebfb
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
100 |
*/ |
cbb1bfb7ebfb
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
101 |
gint QTMSMemBuffer::GetDataSize(guint& size) |
50 | 102 |
{ |
40 | 103 |
gint ret(QTMS_RESULT_SUCCESS); |
104 |
size = iBufferSize; |
|
27
cbb1bfb7ebfb
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
105 |
return ret; |
50 | 106 |
} |
27
cbb1bfb7ebfb
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
107 |
|
cbb1bfb7ebfb
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
108 |
/** |
32
edd273b3192a
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
27
diff
changeset
|
109 |
* Sets the size of data in the buffer after the client fill it. |
edd273b3192a
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
27
diff
changeset
|
110 |
* |
edd273b3192a
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
27
diff
changeset
|
111 |
* @param size size of data in bytes |
edd273b3192a
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
27
diff
changeset
|
112 |
* |
27
cbb1bfb7ebfb
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
113 |
*/ |
cbb1bfb7ebfb
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
114 |
gint QTMSMemBuffer::SetDataSize(const guint size) |
50 | 115 |
{ |
40 | 116 |
gint ret(QTMS_RESULT_SUCCESS); |
117 |
ret = iTmsBuffer->SetDataSize(size); |
|
118 |
iBufferSize = size; //TODO: should realloc when new size > old size (?) |
|
27
cbb1bfb7ebfb
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
119 |
return ret; |
50 | 120 |
} |
27
cbb1bfb7ebfb
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
121 |
|
cbb1bfb7ebfb
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
122 |
/** |
32
edd273b3192a
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
27
diff
changeset
|
123 |
* Gets the pointer to the memory location associated with this |
edd273b3192a
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
27
diff
changeset
|
124 |
* buffer where the data is stored. |
edd273b3192a
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
27
diff
changeset
|
125 |
* |
edd273b3192a
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
27
diff
changeset
|
126 |
* @param bufptr ptr to the data stored in the buffer. |
edd273b3192a
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
27
diff
changeset
|
127 |
* |
27
cbb1bfb7ebfb
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
128 |
*/ |
cbb1bfb7ebfb
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
129 |
gint QTMSMemBuffer::GetDataPtr(guint8*& bufptr) |
50 | 130 |
{ |
40 | 131 |
gint ret(QTMS_RESULT_SUCCESS); |
132 |
bufptr = iDataPtr; |
|
27
cbb1bfb7ebfb
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
133 |
return ret; |
50 | 134 |
} |
40 | 135 |