25 #include "tmsclientserver.h" // for TmsMsgBuf |
25 #include "tmsclientserver.h" // for TmsMsgBuf |
26 |
26 |
27 namespace TMS { |
27 namespace TMS { |
28 |
28 |
29 // FORWARD DECLARATIONS |
29 // FORWARD DECLARATIONS |
30 class TMSBuffer; //TMSDataBuffer |
30 class TMSBuffer; |
31 class TMSGlobalContext; |
31 class TMSGlobalContext; |
32 |
32 |
33 /** |
33 /** |
34 * MQueueHandlerObserver class |
34 * MQueueHandlerObserver class |
35 * Responsible for sending callbacks to the TMS client app |
35 * Responsible for sending callbacks to the TMS client app |
71 /** |
71 /** |
72 * Returns request status. |
72 * Returns request status. |
73 */ |
73 */ |
74 TRequestStatus* Status(); |
74 TRequestStatus* Status(); |
75 |
75 |
|
76 /* |
|
77 * Add and remove observer to buffer events |
|
78 */ |
76 gint AddObserver(MQueueHandlerObserver& obsvr, gint aClientId); |
79 gint AddObserver(MQueueHandlerObserver& obsvr, gint aClientId); |
77 gint RemoveObserver(MQueueHandlerObserver& obsvr); |
80 gint RemoveObserver(MQueueHandlerObserver& obsvr); |
78 |
81 |
79 private: |
82 private: |
80 |
83 |
81 /** |
84 /** |
82 * constructor |
85 * Constructors |
83 */ |
86 */ |
84 TMSQueueHandler(RMsgQueue<TmsMsgBuf>* aMsgQueue, |
87 TMSQueueHandler(RMsgQueue<TmsMsgBuf>* aMsgQueue, |
85 TMSGlobalContext* glblCtx); |
88 TMSGlobalContext* glblCtx); |
86 |
89 |
87 void ConstructL(); |
90 void ConstructL(); |
88 |
91 |
89 // from CActive |
92 // From CActive |
90 void DoCancel(); |
93 void DoCancel(); |
91 void RunL(); |
94 void RunL(); |
92 TInt RunError(TInt aError); |
95 TInt RunError(TInt aError); |
93 |
96 |
|
97 // For buffer processing upon handler events |
94 void DoFillBuffer(gint aBufLen, gint aStatus, gboolean flag, guint32 key); |
98 void DoFillBuffer(gint aBufLen, gint aStatus, gboolean flag, guint32 key); |
95 void DoEmptyBuffer(gint aBufLen, gint aStatus, gboolean flag, guint32 key); |
99 void DoEmptyBuffer(gint aBufLen, gint aStatus, gboolean flag, guint32 key); |
96 gint FindStreamInList(); |
100 gint FindStreamInList(); |
97 gint FindGainEffectInList(); |
101 gint FindGainEffectInList(); |
98 gint FindVolEffectInList(); |
102 gint FindVolEffectInList(); |
99 TMSStreamState ConvertToStreamState(gint request); |
103 TMSStreamState ConvertToStreamState(gint request); |
100 |
104 |
101 private: |
105 private: |
102 // data |
|
103 |
106 |
104 RPointerArray<MQueueHandlerObserver> iObserversList; // (not owned) |
107 RPointerArray<MQueueHandlerObserver> iObserversList; // (not owned) |
105 MQueueHandlerObserver* iObserver; //not owned |
108 MQueueHandlerObserver* iObserver; //not owned |
106 RArray<gint> iClientList; |
109 RArray<gint> iClientList; |
107 RMsgQueue<TmsMsgBuf>* iMsgQueue; |
110 RMsgQueue<TmsMsgBuf>* iMsgQueue; |
108 |
111 |
109 RChunk iChunk; |
112 RChunk iChunk; |
110 TPtr8 iChunkDataPtr; |
113 TPtr8 iChunkDataPtr; |
111 TMSBuffer* iBuffer; |
114 TMSBuffer* iBuffer; |
112 TMSGlobalContext *iTMSGlobalContext; |
115 TMSGlobalContext* iTMSGlobalContext; |
113 }; |
116 }; |
114 |
117 |
115 } //namespace TMS |
118 } //namespace TMS |
116 |
119 |
117 #endif // TMS_QUEUEHANDLER_H |
120 #endif // TMS_QUEUEHANDLER_H |