mmserv/tms/inc/tmsqueuehandler.h
branchRCL_3
changeset 17 60e492b28869
parent 9 f5c5c82a163e
equal deleted inserted replaced
15:ab526b8cacfb 17:60e492b28869
    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