baseport/syborg/soundsc/virtio_audio.h
changeset 72 d00bf4f57250
parent 45 01c1ffcc4fca
equal deleted inserted replaced
71:5158c0d3bde3 72:d00bf4f57250
    34 class DControl : public DBase
    34 class DControl : public DBase
    35 	{
    35 	{
    36 	static const TUint KCmdMaxBufCount = 8;
    36 	static const TUint KCmdMaxBufCount = 8;
    37 	static const TUint KControlQueueId = 0;
    37 	static const TUint KControlQueueId = 0;
    38 public:
    38 public:
    39 	enum Command { ERun = 5, EStop, EPause, EResume };
    39 	enum Command { ERun = 5, EStop, EPause, EResume, EShutDown };
    40 	
    40 	
    41 	DControl( VirtIo::MIoHandler& aIoHandler, TUint32 aDataQueueId )
    41 	DControl( VirtIo::MIoHandler& aIoHandler, TUint32 aDataQueueId )
    42 	: iIoHandler( aIoHandler ), iDataQueueId( aDataQueueId)
    42 	: iIoHandler( aIoHandler ), iDataQueueId( aDataQueueId), iIsRunning( 0 )
    43 		{}
    43 		{}
    44 		
    44 		
    45 	~DControl();
    45 	~DControl();
    46 		
    46 		
    47 	TInt Construct();
    47 	TInt Construct();
    81 	
    81 	
    82 	void AddCommand( TCommandPadded* aCmd, Token aToken, TAny* mem, TUint size );
    82 	void AddCommand( TCommandPadded* aCmd, Token aToken, TAny* mem, TUint size );
    83 
    83 
    84 	void AddCommand( Command aCmd );
    84 	void AddCommand( Command aCmd );
    85 
    85 
    86 	void WaitForCompletion();
       
    87 	static TBool CheckProcessing( TAny* aSelf );
       
    88 	
       
    89 	VirtIo::MIoHandler& iIoHandler;
    86 	VirtIo::MIoHandler& iIoHandler;
    90 	TUint iDataQueueId;
    87 	TUint iDataQueueId;
    91 	
    88 	
    92 	TUint8* iCmdMem; // managed
    89 	TUint8* iCmdMem; // managed
    93 	TCommandPadded* iCmd; // unmanaged
    90 	TCommandPadded* iCmd; // unmanaged
    94 	TBufferInfo* iBufferInfo; // unmanaged
    91 	TBufferInfo* iBufferInfo; // unmanaged
    95 	
    92 	
    96 	StreamDirection iDirection;
    93 	StreamDirection iDirection;
       
    94     
       
    95     TUint iIsRunning;
    97 	};
    96 	};
    98 
    97 
    99 } // namespace Audio
    98 } // namespace Audio
   100 } // namespace VirtIo
    99 } // namespace VirtIo
   101 
   100