1 /* |
1 /* |
2 * Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). |
2 * Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). |
3 * All rights reserved. |
3 * All rights reserved. |
4 * This component and the accompanying materials are made available |
4 * This component and the accompanying materials are made available |
5 * under the terms of "Eclipse Public License v1.0" |
5 * under the terms of "Eclipse Public License v1.0" |
6 * which accompanies this distribution, and is available |
6 * which accompanies this distribution, and is available |
7 * at the URL "http://www.eclipse.org/legal/epl-v10.html". |
7 * at the URL "http://www.eclipse.org/legal/epl-v10.html". |
8 * |
8 * |
9 * Initial Contributors: |
9 * Initial Contributors: |
10 * Nokia Corporation - initial contribution. |
10 * Nokia Corporation - initial contribution. |
11 * |
11 * |
12 * Contributors: |
12 * Contributors: |
13 * |
13 * |
14 * Description: |
14 * Description: Record Itf Impl |
15 * |
15 * |
16 */ |
16 */ |
17 |
17 |
18 #ifndef XARECORDITF_H |
18 #ifndef XARECORDITF_H |
19 #define XARECORDITF_H |
19 #define XARECORDITF_H |
20 |
20 |
21 #include "openmaxalwrapper.h" |
21 #include "openmaxalwrapper.h" |
33 /** ENUMERATIONS **/ |
33 /** ENUMERATIONS **/ |
34 |
34 |
35 /** STRUCTURES **/ |
35 /** STRUCTURES **/ |
36 /* Definition of XARecordItf implementation */ |
36 /* Definition of XARecordItf implementation */ |
37 typedef struct XARecordItfImpl_ |
37 typedef struct XARecordItfImpl_ |
38 { |
38 { |
39 /* parent interface */ |
39 /* parent interface */ |
40 struct XARecordItf_ itf; |
40 struct XARecordItf_ itf; |
41 /* pointer to self */ |
41 /* pointer to self */ |
42 struct XARecordItfImpl_* self; |
42 struct XARecordItfImpl_* self; |
43 |
43 |
44 XAMediaRecorderImpl* pObjImpl; |
44 XAMediaRecorderImpl* pObjImpl; |
45 /* variables */ |
45 /* variables */ |
46 XAuint32 recordState; |
46 XAuint32 recordState; |
47 XAboolean durationLimitSetted; |
47 XAboolean durationLimitSetted; |
48 XAmillisecond durationLimit; |
48 XAmillisecond durationLimit; |
49 XAmillisecond markerPosition; |
49 XAmillisecond markerPosition; |
50 XAmillisecond positionUpdatePeriod; |
50 XAmillisecond positionUpdatePeriod; |
51 void *cbcontext; |
51 void *cbcontext; |
52 XAuint32 eventFlags; |
52 XAuint32 eventFlags; |
53 XAboolean positionupdateOn; |
53 XAboolean positionupdateOn; |
54 XAmillisecond lastPosition; |
54 XAmillisecond lastPosition; |
55 |
55 |
56 xaRecordCallback callback; |
56 xaRecordCallback callback; |
57 void* context; |
57 void* context; |
58 XARecordItf cbPtrToSelf; |
58 XARecordItf cbPtrToSelf; |
59 |
59 |
60 /*Adaptation variables*/ |
60 /*Adaptation variables*/ |
61 XAAdaptationBaseCtx *adapCtx; |
61 XAAdaptationBaseCtx *adapCtx; |
62 |
62 |
63 } XARecordItfImpl; |
63 } XARecordItfImpl; |
64 |
64 |
65 /** METHODS **/ |
65 /** METHODS **/ |
66 |
66 |
67 /* Base interface XARecordItf implementation |
67 /* Base interface XARecordItf implementation |
68 * See API Specification for method documentation |
68 * See API Specification for method documentation |
69 */ |
69 */ |
70 XAresult XARecordItfImpl_SetRecordState( XARecordItf self, |
70 XAresult XARecordItfImpl_SetRecordState(XARecordItf self, XAuint32 state); |
71 XAuint32 state ); |
|
72 |
71 |
73 XAresult XARecordItfImpl_GetRecordState( XARecordItf self, |
72 XAresult XARecordItfImpl_GetRecordState(XARecordItf self, XAuint32 *pState); |
74 XAuint32 *pState ); |
|
75 |
73 |
76 XAresult XARecordItfImpl_SetDurationLimit( XARecordItf self, |
74 XAresult XARecordItfImpl_SetDurationLimit(XARecordItf self, |
77 XAmillisecond msec ); |
75 XAmillisecond msec); |
78 |
76 |
79 XAresult XARecordItfImpl_GetPosition( XARecordItf self, |
77 XAresult XARecordItfImpl_GetPosition(XARecordItf self, XAmillisecond *pMsec); |
80 XAmillisecond *pMsec ); |
|
81 |
78 |
82 XAresult XARecordItfImpl_RegisterCallback( XARecordItf self, |
79 XAresult XARecordItfImpl_RegisterCallback(XARecordItf self, |
83 xaRecordCallback callback, |
80 xaRecordCallback callback, void *pContext); |
84 void *pContext ); |
|
85 |
81 |
86 XAresult XARecordItfImpl_SetCallbackEventsMask( XARecordItf self, |
82 XAresult XARecordItfImpl_SetCallbackEventsMask(XARecordItf self, |
87 XAuint32 eventFlags ); |
83 XAuint32 eventFlags); |
88 |
84 |
89 XAresult XARecordItfImpl_GetCallbackEventsMask( XARecordItf self, |
85 XAresult XARecordItfImpl_GetCallbackEventsMask(XARecordItf self, |
90 XAuint32 *pEventFlags ); |
86 XAuint32 *pEventFlags); |
91 |
87 |
92 XAresult XARecordItfImpl_SetMarkerPosition( XARecordItf self, |
88 XAresult XARecordItfImpl_SetMarkerPosition(XARecordItf self, |
93 XAmillisecond mSec ); |
89 XAmillisecond mSec); |
94 |
90 |
95 XAresult XARecordItfImpl_ClearMarkerPosition( XARecordItf self ); |
91 XAresult XARecordItfImpl_ClearMarkerPosition(XARecordItf self); |
96 |
92 |
97 XAresult XARecordItfImpl_GetMarkerPosition( XARecordItf self, |
93 XAresult XARecordItfImpl_GetMarkerPosition(XARecordItf self, |
98 XAmillisecond *pMsec ); |
94 XAmillisecond *pMsec); |
99 |
95 |
100 XAresult XARecordItfImpl_SetPositionUpdatePeriod( XARecordItf self, |
96 XAresult XARecordItfImpl_SetPositionUpdatePeriod(XARecordItf self, |
101 XAmillisecond mSec ); |
97 XAmillisecond mSec); |
102 |
98 |
103 XAresult XARecordItfImpl_GetPositionUpdatePeriod( XARecordItf self, |
99 XAresult XARecordItfImpl_GetPositionUpdatePeriod(XARecordItf self, |
104 XAmillisecond *pMsec ); |
100 XAmillisecond *pMsec); |
105 |
101 |
106 /* XARecordItfImpl -specific methods */ |
102 /* XARecordItfImpl -specific methods */ |
107 XARecordItfImpl* XARecordItfImpl_Create( XAMediaRecorderImpl* impl ); |
103 XARecordItfImpl* XARecordItfImpl_Create(XAMediaRecorderImpl* impl); |
108 void XARecordItfImpl_Free( XARecordItfImpl* self ); |
104 void XARecordItfImpl_Free(XARecordItfImpl* self); |
109 void XARecordItfImpl_AdaptCb( void *pHandlerCtx, XAAdaptEvent *event ); |
105 void XARecordItfImpl_AdaptCb(void *pHandlerCtx, XAAdaptEvent *event); |
110 |
106 |
111 #endif |
107 #endif |
112 /* XARECORDITF_H */ |
108 /* XARECORDITF_H */ |