diff -r c1e808730d6c -r eedf2dcd43c6 omxil/mmilapi/unittest/test_plugins/dummypcmrenderer/dummypcmrenderer.h --- a/omxil/mmilapi/unittest/test_plugins/dummypcmrenderer/dummypcmrenderer.h Mon May 03 13:56:28 2010 +0300 +++ b/omxil/mmilapi/unittest/test_plugins/dummypcmrenderer/dummypcmrenderer.h Fri May 07 16:25:23 2010 +0100 @@ -1,159 +1,159 @@ -// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies). -// All rights reserved. -// This component and the accompanying materials are made available -// under the terms of "Eclipse Public License v1.0" -// which accompanies this distribution, and is available -// at the URL "http://www.eclipse.org/legal/epl-v10.html". -// -// Initial Contributors: -// Nokia Corporation - initial contribution. -// -// Contributors: -// -// Description: -// - -/** - @file - @internalComponent -*/ - -#ifndef DUMMYPCMRENDERER_H -#define DUMMYPCMRENDERER_H - -#include -#include -#include - -#include "milcomponentportif.h" -#include "milifobserver.h" -#include "ilcomponentif.h" - -#ifdef SYMBIAN_MDF_SHAREDCHUNK_SOUNDDRIVER - #include "mdasoundadapter.h" -#else - #include -#endif - -class CMMFBuffer; - -/* -PCM sink renderer component (this is just a simple non-omx component for testing) -This component is used together with the omxilvorbdechwdevice and the OMXVorbisDecoder -for testing when requesting a HwDevice supporting VRB2 fourCC. -*/ -class CDummyPcmRenderer : public CILComponentIf - { -public: - /* - PCM sink input port - */ - class CInputPort: public CActive, - public MILComponentPortIf, - public MPlayCustomInterface - { - friend class CDummyPcmRenderer; - - public: - static CInputPort* NewL(CDummyPcmRenderer& aParent); - - // MILComponentPortIf - TInt FillThisBuffer(CMMFBuffer& aBuffer); - TInt EmptyThisBuffer(const CMMFBuffer& aBuffer); - TInt TunnelRequest(MILComponentPortIf* aPort); - TInt DisconnectTunnel(MILComponentPortIf* aPort); - TInt PortIndex() const; - TPortDirection PortDirection() const; - CMMFBuffer* CreateBufferL(TInt aBufferSize); - TInt UseBuffer(CMMFBuffer& aBuffer); - TInt FreeBuffer(CMMFBuffer* aBuffer); - TInt FlushPort(); - TInt EnablePort(); - TInt DisablePort(); - MILComponentIf* PortComponent() const; - - // from MPlayCustomInterface - void SetVolume(TUint aVolume); - TUint Volume(); - TUint BytesPlayed(); - void SetVolumeRamp(const TTimeIntervalMicroSeconds& aRampDuration); - TTimeIntervalMicroSeconds& VolumeRamp(); - TInt SampleRate(); - TInt Channels(); - - // from CActive - void RunL(); - void DoCancel(); - - // Internal - TUint32 BufferSize() const; - void Execute(); - void Pause(); - void Stop(); - ~CInputPort(); - - private: - explicit CInputPort(CDummyPcmRenderer& aParent); - - private: - CDummyPcmRenderer& iParent; - MILComponentPortIf* iPortConnectedTo; - CMMFBuffer* iCurrentBuffer; - RPointerArray iBuffers; - TInt iSampleRate; - TInt iChannels; - TBool iInterleaved; - TUint iVolume; - TTimeIntervalMicroSeconds iRampDuration; - TUint iBytesPlayed; - TBool iPaused; - TBool iStopped; - TUint iBufferSize; - }; -public: - static CDummyPcmRenderer* NewL(); - - // from MILComponentIf - void CreateComponentL(const TDesC8& aComponentName, MILIfObserver& aComponentIfObserver); - void CreateComponentL(const TUid& aUid, MILIfObserver& aComponentIfObserver); - void ReleaseComponent(); - TInt GetComponentInputPorts(RPointerArray& aComponentPorts) const; - TInt GetComponentOutputPorts(RPointerArray& aComponentPorts) const; - TInt SetConfig(const TILStruct& aConfig, const MILComponentPortIf* aComponentPort); - TInt GetConfig(TILStruct& aConfig, const MILComponentPortIf* aComponentPort) const; - TInt Initialize(); - TInt Execute(); - TInt Pause(); - TInt Stop(); - TInt UnInitialize(); - TInt GetState(TILComponentState& aState) const; - TInt SendCommand(const TILCommand& aCommand); - TInt FlushAllPorts(); - TInt ComponentRoleEnum(TPtr8& aComponentRole, TUint32 aIndex) const; - TInt GetComponentVersion(TILComponentVersion& aVersion) const; - TInt SetComponentIfRole(const TUid& aFormat); - TInt SetComponentIfRole(const TDesC8& aComponentRole); - TInt GetComponentIfRole(TUid& aFormat) const; - TInt GetComponentIfRole(TDes8& aComponentRole) const; - TInt SetExtConfig(const TDesC8& aParameterName, const TILStruct& aConfig, const MILComponentPortIf* aComponentPort); - TInt GetExtConfig(const TDesC8& aParameterName, TILStruct& aConfig, const MILComponentPortIf* aComponentPort) const; - TAny* CustomInterface(TUid aUid); - - - ~CDummyPcmRenderer(); - -private: - CDummyPcmRenderer(); - - RMdaDevSound& SoundDevice(); - MILIfObserver* Observer() const; - -private: - RMdaDevSound iSoundDevice; - TILComponentState iState; - - CInputPort* iInputPort; - MILIfObserver* iObserver; // Not owned - }; - -#endif // DUMMYPCMRENDERER_H +// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies). +// All rights reserved. +// This component and the accompanying materials are made available +// under the terms of "Eclipse Public License v1.0" +// which accompanies this distribution, and is available +// at the URL "http://www.eclipse.org/legal/epl-v10.html". +// +// Initial Contributors: +// Nokia Corporation - initial contribution. +// +// Contributors: +// +// Description: +// + +/** + @file + @internalComponent +*/ + +#ifndef DUMMYPCMRENDERER_H +#define DUMMYPCMRENDERER_H + +#include +#include +#include + +#include "milcomponentportif.h" +#include "milifobserver.h" +#include "ilcomponentif.h" + +#ifdef SYMBIAN_MDF_SHAREDCHUNK_SOUNDDRIVER + #include "mdasoundadapter.h" +#else + #include +#endif + +class CMMFBuffer; + +/* +PCM sink renderer component (this is just a simple non-omx component for testing) +This component is used together with the omxilvorbdechwdevice and the OMXVorbisDecoder +for testing when requesting a HwDevice supporting VRB2 fourCC. +*/ +class CDummyPcmRenderer : public CILComponentIf + { +public: + /* + PCM sink input port + */ + class CInputPort: public CActive, + public MILComponentPortIf, + public MPlayCustomInterface + { + friend class CDummyPcmRenderer; + + public: + static CInputPort* NewL(CDummyPcmRenderer& aParent); + + // MILComponentPortIf + TInt FillThisBuffer(CMMFBuffer& aBuffer); + TInt EmptyThisBuffer(const CMMFBuffer& aBuffer); + TInt TunnelRequest(MILComponentPortIf* aPort); + TInt DisconnectTunnel(MILComponentPortIf* aPort); + TInt PortIndex() const; + TPortDirection PortDirection() const; + CMMFBuffer* CreateBufferL(TInt aBufferSize); + TInt UseBuffer(CMMFBuffer& aBuffer); + TInt FreeBuffer(CMMFBuffer* aBuffer); + TInt FlushPort(); + TInt EnablePort(); + TInt DisablePort(); + MILComponentIf* PortComponent() const; + + // from MPlayCustomInterface + void SetVolume(TUint aVolume); + TUint Volume(); + TUint BytesPlayed(); + void SetVolumeRamp(const TTimeIntervalMicroSeconds& aRampDuration); + TTimeIntervalMicroSeconds& VolumeRamp(); + TInt SampleRate(); + TInt Channels(); + + // from CActive + void RunL(); + void DoCancel(); + + // Internal + TUint32 BufferSize() const; + void Execute(); + void Pause(); + void Stop(); + ~CInputPort(); + + private: + explicit CInputPort(CDummyPcmRenderer& aParent); + + private: + CDummyPcmRenderer& iParent; + MILComponentPortIf* iPortConnectedTo; + CMMFBuffer* iCurrentBuffer; + RPointerArray iBuffers; + TInt iSampleRate; + TInt iChannels; + TBool iInterleaved; + TUint iVolume; + TTimeIntervalMicroSeconds iRampDuration; + TUint iBytesPlayed; + TBool iPaused; + TBool iStopped; + TUint iBufferSize; + }; +public: + static CDummyPcmRenderer* NewL(); + + // from MILComponentIf + void CreateComponentL(const TDesC8& aComponentName, MILIfObserver& aComponentIfObserver); + void CreateComponentL(const TUid& aUid, MILIfObserver& aComponentIfObserver); + void ReleaseComponent(); + TInt GetComponentInputPorts(RPointerArray& aComponentPorts) const; + TInt GetComponentOutputPorts(RPointerArray& aComponentPorts) const; + TInt SetConfig(const TILStruct& aConfig, const MILComponentPortIf* aComponentPort); + TInt GetConfig(TILStruct& aConfig, const MILComponentPortIf* aComponentPort) const; + TInt Initialize(); + TInt Execute(); + TInt Pause(); + TInt Stop(); + TInt UnInitialize(); + TInt GetState(TILComponentState& aState) const; + TInt SendCommand(const TILCommand& aCommand); + TInt FlushAllPorts(); + TInt ComponentRoleEnum(TPtr8& aComponentRole, TUint32 aIndex) const; + TInt GetComponentVersion(TILComponentVersion& aVersion) const; + TInt SetComponentIfRole(const TUid& aFormat); + TInt SetComponentIfRole(const TDesC8& aComponentRole); + TInt GetComponentIfRole(TUid& aFormat) const; + TInt GetComponentIfRole(TDes8& aComponentRole) const; + TInt SetExtConfig(const TDesC8& aParameterName, const TILStruct& aConfig, const MILComponentPortIf* aComponentPort); + TInt GetExtConfig(const TDesC8& aParameterName, TILStruct& aConfig, const MILComponentPortIf* aComponentPort) const; + TAny* CustomInterface(TUid aUid); + + + ~CDummyPcmRenderer(); + +private: + CDummyPcmRenderer(); + + RMdaDevSound& SoundDevice(); + MILIfObserver* Observer() const; + +private: + RMdaDevSound iSoundDevice; + TILComponentState iState; + + CInputPort* iInputPort; + MILIfObserver* iObserver; // Not owned + }; + +#endif // DUMMYPCMRENDERER_H