141 case ETMSGetAvailableOutputs: |
141 case ETMSGetAvailableOutputs: |
142 iServer.GetAvailableOutputs(aMessage); |
142 iServer.GetAvailableOutputs(aMessage); |
143 break; |
143 break; |
144 case ETMSStartRoutingNotifier: |
144 case ETMSStartRoutingNotifier: |
145 iServer.StartRoutingNotifierL(); |
145 iServer.StartRoutingNotifierL(); |
146 aMessage.Complete(KErrNone); |
146 aMessage.Complete(TMS_RESULT_SUCCESS); |
147 break; |
147 break; |
148 case ETMSCancelRoutingNotifier: |
148 case ETMSCancelRoutingNotifier: |
149 iServer.CancelRoutingNotifier(); |
149 iServer.CancelRoutingNotifier(); |
150 aMessage.Complete(KErrNone); |
150 aMessage.Complete(TMS_RESULT_SUCCESS); |
151 break; |
151 break; |
152 case ETMSStartGlobalEffectNotifier: |
152 case ETMSStartGlobalEffectNotifier: |
153 iServer.StartCenRepHandlerL(); |
153 iServer.StartCenRepHandlerL(); |
154 aMessage.Complete(KErrNone); |
154 aMessage.Complete(TMS_RESULT_SUCCESS); |
155 break; |
155 break; |
156 case ETMSCancelGlobalEffectNotifier: |
156 case ETMSCancelGlobalEffectNotifier: |
157 iServer.CancelCenRepHandler(); |
157 iServer.CancelCenRepHandler(); |
158 aMessage.Complete(KErrNone); |
158 aMessage.Complete(TMS_RESULT_SUCCESS); |
159 break; |
159 break; |
160 case ETMSSetMsgQueueHandle: |
160 case ETMSSetMsgQueueHandle: |
161 SetMessageQueueHandleL(aMessage); |
161 SetMessageQueueHandleL(aMessage); |
162 break; |
162 break; |
163 case ETMSSetGlobalVol: |
163 case ETMSSetGlobalVol: |
190 // Open message queue for handling server notifications back to the client. |
190 // Open message queue for handling server notifications back to the client. |
191 // ----------------------------------------------------------------------------- |
191 // ----------------------------------------------------------------------------- |
192 // |
192 // |
193 void TMSServerSession::SetMessageQueueHandleL(const RMessage2& aMessage) |
193 void TMSServerSession::SetMessageQueueHandleL(const RMessage2& aMessage) |
194 { |
194 { |
195 gint status = KErrNone; |
195 gint status = TMS_RESULT_SUCCESS; |
196 if (iMsgQueue.Handle() <= 0) |
196 if (iMsgQueue.Handle() <= 0) |
197 { |
197 { |
198 status = iMsgQueue.Open(aMessage, 0); |
198 status = iMsgQueue.Open(aMessage, 0); |
199 } |
199 } |
200 if (status != KErrNone) |
200 if (status != TMS_RESULT_SUCCESS) |
201 { |
201 { |
202 User::Leave(KErrArgument); |
202 User::Leave(KErrArgument); |
203 } |
203 } |
204 aMessage.Complete(KErrNone); |
204 aMessage.Complete(TMS_RESULT_SUCCESS); |
205 } |
205 } |
206 |
206 |
207 // ----------------------------------------------------------------------------- |
207 // ----------------------------------------------------------------------------- |
208 // TMSServerSession::SetVolLevel |
208 // TMSServerSession::SetVolLevel |
209 // ----------------------------------------------------------------------------- |
209 // ----------------------------------------------------------------------------- |
210 // |
210 // |
211 void TMSServerSession::SetVolLevel(const RMessage2& aMessage) |
211 void TMSServerSession::SetVolLevel(const RMessage2& aMessage) |
212 { |
212 { |
213 TInt level = aMessage.Int0(); |
213 TInt level = aMessage.Int0(); |
214 iServer.SetLevel(this, TRUE, level); |
214 iServer.SetLevel(this, TRUE, level); |
215 aMessage.Complete(KErrNone); |
215 aMessage.Complete(TMS_RESULT_SUCCESS); |
216 } |
216 } |
217 |
217 |
218 // ----------------------------------------------------------------------------- |
218 // ----------------------------------------------------------------------------- |
219 // TMSServerSession::SetMicGain |
219 // TMSServerSession::SetMicGain |
220 // ----------------------------------------------------------------------------- |
220 // ----------------------------------------------------------------------------- |
221 // |
221 // |
222 void TMSServerSession::SetMicGain(const RMessage2& aMessage) |
222 void TMSServerSession::SetMicGain(const RMessage2& aMessage) |
223 { |
223 { |
224 TInt gain = aMessage.Int0(); |
224 TInt gain = aMessage.Int0(); |
225 iServer.SetGain(this, gain); |
225 iServer.SetGain(this, gain); |
226 aMessage.Complete(KErrNone); |
226 aMessage.Complete(TMS_RESULT_SUCCESS); |
227 } |
227 } |
228 |
228 |
229 // ----------------------------------------------------------------------------- |
229 // ----------------------------------------------------------------------------- |
230 // TMSServerSession::HandleGlobalEffectChange |
230 // TMSServerSession::HandleGlobalEffectChange |
231 // ----------------------------------------------------------------------------- |
231 // ----------------------------------------------------------------------------- |
232 // |
232 // |
233 void TMSServerSession::HandleGlobalEffectChange(TInt globalevent) |
233 void TMSServerSession::HandleGlobalEffectChange(TInt globalevent) |
234 { |
234 { |
235 TRACE_PRN_FN_ENT; |
235 TRACE_PRN_FN_ENT; |
236 iMsgBuffer.iRequest = ECmdGlobalEffectChange; |
|
237 iMsgBuffer.iStatus = KErrNone; |
|
238 iMsgBuffer.iInt = globalevent; |
236 iMsgBuffer.iInt = globalevent; |
239 NotifyClient(); |
237 NotifyClient(ECmdGlobalEffectChange); |
240 TRACE_PRN_FN_EXT; |
238 TRACE_PRN_FN_EXT; |
241 } |
239 } |
242 |
240 |
243 // ----------------------------------------------------------------------------- |
241 // ----------------------------------------------------------------------------- |
244 // TMSServerSession::HandleRoutingChange |
242 // TMSServerSession::HandleRoutingChange |
245 // ----------------------------------------------------------------------------- |
243 // ----------------------------------------------------------------------------- |
246 // |
244 // |
247 void TMSServerSession::HandleRoutingChange(TRoutingMsgBufPckg routinginfo) |
245 void TMSServerSession::HandleRoutingChange(TRoutingMsgBufPckg routinginfo) |
248 { |
246 { |
249 TRACE_PRN_FN_ENT; |
247 TRACE_PRN_FN_ENT; |
250 iMsgBuffer.iRequest = ECmdGlobalRoutingChange; |
|
251 iMsgBuffer.iStatus = KErrNone; |
|
252 iMsgBuffer.iInt = routinginfo().iEvent; |
248 iMsgBuffer.iInt = routinginfo().iEvent; |
253 iMsgBuffer.iUint = routinginfo().iOutput; |
249 iMsgBuffer.iUint = routinginfo().iOutput; |
254 NotifyClient(); |
250 NotifyClient(ECmdGlobalRoutingChange); |
255 TRACE_PRN_FN_EXT; |
251 TRACE_PRN_FN_EXT; |
256 } |
252 } |
257 |
253 |
258 // ----------------------------------------------------------------------------- |
254 // ----------------------------------------------------------------------------- |
259 // TMSServerSession::GetTMSCallSessionHandleL |
255 // TMSServerSession::GetTMSCallSessionHandleL |
377 // |
373 // |
378 void TMSServerSession::SetOutput(const RMessage2& aMessage) |
374 void TMSServerSession::SetOutput(const RMessage2& aMessage) |
379 { |
375 { |
380 TInt output = aMessage.Int0(); |
376 TInt output = aMessage.Int0(); |
381 iServer.SetOutput(this, output); |
377 iServer.SetOutput(this, output); |
382 aMessage.Complete(KErrNone); |
378 aMessage.Complete(TMS_RESULT_SUCCESS); |
383 } |
379 } |
384 |
380 |
385 // ----------------------------------------------------------------------------- |
381 // ----------------------------------------------------------------------------- |
386 // TMSServerSession::NotifyClient |
382 // TMSServerSession::NotifyClient |
387 // ----------------------------------------------------------------------------- |
383 // ----------------------------------------------------------------------------- |
388 // |
384 // |
389 void TMSServerSession::NotifyClient() |
385 void TMSServerSession::NotifyClient(const TInt aCommand, const TInt aStatus) |
390 { |
386 { |
|
387 iMsgBuffer.iRequest = aCommand; |
|
388 iMsgBuffer.iStatus = aStatus; |
391 if (iMsgQueue.Handle() > 0) |
389 if (iMsgQueue.Handle() > 0) |
392 { |
390 { |
393 iMsgQueue.Send(iMsgBuffer); |
391 iMsgQueue.Send(iMsgBuffer); |
394 } |
392 } |
395 } |
393 } |