equal
deleted
inserted
replaced
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 |