khronosfws/openmax_al/src/mmf_adaptation/positionupdatetimer.h
changeset 25 6f7ceef7b1d1
parent 19 4a629bc82c5e
equal deleted inserted replaced
21:2ed61feeead6 25:6f7ceef7b1d1
     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: Handles marker timer implementation 
    14  * Description: Handles marker timer implementation 
    15 *
    15  *
    16 */
    16  */
    17 
    17 
    18 #ifndef CPOSITIONUPDATETIMER_H
    18 #ifndef CPOSITIONUPDATETIMER_H
    19 #define CPOSITIONUPDATETIMER_H
    19 #define CPOSITIONUPDATETIMER_H
    20 
    20 
    21 #include <e32base.h>
    21 #include <e32base.h>
    27 NONSHARABLE_CLASS(CPositionUpdateTimer) : public CActive
    27 NONSHARABLE_CLASS(CPositionUpdateTimer) : public CActive
    28     {
    28     {
    29 public:
    29 public:
    30     // Construct/destruct
    30     // Construct/destruct
    31     static CPositionUpdateTimer* NewL(CMdaAudioPlayerUtility* aAudioPlayer,
    31     static CPositionUpdateTimer* NewL(CMdaAudioPlayerUtility* aAudioPlayer,
    32                             CVideoPlayerUtility2* aVideoPlayer);
    32             CVideoPlayerUtility2* aVideoPlayer);
    33     ~CPositionUpdateTimer();
    33     virtual ~CPositionUpdateTimer();
    34 
    34 
    35 public:
    35 public:
    36     void SetContext(TAny* aCtx);
    36     void SetContext(TAny* aCtx);
    37     void SetPositionUpdatePeriod(XAmillisecond aPos);
    37     void SetPositionUpdatePeriod(XAmillisecond aPos);
    38     void SetCallbackEventMask(XAuint32 aMask);
    38     void SetCallbackEventMask(XAuint32 aMask);
    54             CVideoPlayerUtility2* aVideoPlayer);
    54             CVideoPlayerUtility2* aVideoPlayer);
    55     void CostructL();
    55     void CostructL();
    56     TInt GetCurrentPlayPosition(TTimeIntervalMicroSeconds& aPos);
    56     TInt GetCurrentPlayPosition(TTimeIntervalMicroSeconds& aPos);
    57 
    57 
    58 private:
    58 private:
    59     RTimer iTimer;      // Has
    59     RTimer iTimer; // Has
    60     TAny* iCtx;
    60     TAny* iCtx;
    61     CMdaAudioPlayerUtility* iAudioPlayer;
    61     CMdaAudioPlayerUtility* iAudioPlayer;
    62     CVideoPlayerUtility2* iVideoPlayer;
    62     CVideoPlayerUtility2* iVideoPlayer;
    63     CBase* iPlayerToUse;
    63     CBase* iPlayerToUse;
    64     XAmillisecond iPositionUpdatePeriod;
    64     XAmillisecond iPositionUpdatePeriod;
    65     XAuint32 iCallbackEventMask;
    65     XAuint32 iCallbackEventMask;
    66     xaPlayCallback iCallback;
    66     xaPlayCallback iCallback;
    67     TTimeIntervalMicroSeconds32 iDelay;
    67     TTimeIntervalMicroSeconds32 iDelay;
    68 	TBool iSyncToPlayHead;
    68     TBool iSyncToPlayHead;
    69 	TTimeIntervalMicroSeconds iSyncToPlayHeadStartPos;
    69     TTimeIntervalMicroSeconds iSyncToPlayHeadStartPos;
    70     };
    70     };
    71 
    71 
    72 #endif /* CPOSITIONUPDATETIMER_H */
    72 #endif /* CPOSITIONUPDATETIMER_H */