caudio.h

来自「symbian C++ 手机二维软件开发例子程序」· C头文件 代码 · 共 91 行

H
91
字号
///////////////////////////////////////////////////////////////////////////////
//
// CAudio.h
//
// Copyright (c) 2003 Forum Nokia.  All rights reserved.
//
// 	 Technology developed by Rocket Science Oy Ltd
//
///////////////////////////////////////////////////////////////////////////////


#ifndef __CAUDIOPLAY_H__
#define __CAUDIOPLAY_H__

// INCLUDE FILES
#include <e32base.h>
#include <MdaAudioOutputStream.h>
#include <mda\common\audio.h>

// FORWARD DECLARATIONS
class MAudioSource;

// CLASS DECLARATION
/**
* A class ... 
* 
*/
class CAudio
	: public CBase
	, public MMdaAudioOutputStreamCallback
	{
	public:
		/**
		* Two-phased constructors
		*/
		static CAudio* NewL();
		static CAudio* NewLC();

		/**
		* Destructor.
		*/
		~CAudio();

	private:	

		/**
		* Default constructor
		*/
		CAudio();

		/**
		* Second phase constructor
		*/
		void ConstructL();

	private: // From MMdaAudioOutputStreamCallback
		void MaoscOpenComplete( TInt aError );
		void MaoscBufferCopied( TInt aError, const TDesC8& aBuffer );
		void MaoscPlayComplete( TInt aError );

	public: // New methods
		/**
		* Holds current error status.
		* @return standard error code
		*/
		TInt Error();

		/**
		* Sets audio source.
		* Audio source generates the actual sound.
		* @param MAudioSource* Audio source
		*/
		void SetAudioSource( MAudioSource* aSource );
		
	public: // Data members
	
		CMdaAudioOutputStream* iStream;		/// audio stream
		TMdaAudioDataSettings iSet;			/// audio stream settings
		TInt iAudioBufferLen;				/// audio buffer length
		TInt16* iAudioBuffer;				/// audio buffer
		TPtrC8 iAudioPtr;					/// pointer to audio buffer
		TInt iError;						/// global error value

		MAudioSource* iAudioSource;			/// audio source
		
	};

#endif

// End of file

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?