mmserv/tms/tmsserver/inc/tmsserversession.h
changeset 12 5a06f39ad45b
parent 0 71ca22bcf22a
child 14 80975da52420
equal deleted inserted replaced
0:71ca22bcf22a 12:5a06f39ad45b
    26 
    26 
    27 namespace TMS {
    27 namespace TMS {
    28 
    28 
    29 // FORWARD DECLARATIONS
    29 // FORWARD DECLARATIONS
    30 class TMSServerThread;
    30 class TMSServerThread;
       
    31 class TMSAudioInbandTonePlayer;
       
    32 class TMSRingTonePlayer;
    31 
    33 
    32 // -----------------------------------------------------------------------------
    34 // -----------------------------------------------------------------------------
    33 //  Class Name:  TMSServerSession
    35 //  Class Name:  TMSServerSession
    34 //
    36 //
    35 //  TMS server session class.
    37 //  TMS server session class.
    36 // -----------------------------------------------------------------------------
    38 // -----------------------------------------------------------------------------
    37 class TMSServerSession : public CSession2
    39 class TMSServerSession : public CSession2
    38     {
    40     {
    39 public:
    41 public:
    40 
       
    41     // Constractor
    42     // Constractor
    42     static TMSServerSession* NewL(TMSServer &aServer);
    43     static TMSServerSession* NewL(TMSServer &aServer);
    43 
    44 
    44     // Destructor
    45     // Destructor
    45     ~TMSServerSession();
    46     ~TMSServerSession();
    46 
    47 
    47     void HandleGlobalEffectChange(TInt globalevent);
    48     void HandleGlobalEffectChange(TInt globalevent);
    48     void HandleRoutingChange(TRoutingMsgBufPckg routinginfo);
    49     void HandleRoutingChange(TRoutingMsgBufPckg routinginfo);
    49 
    50 
       
    51     // Send notifications to clients
       
    52     void NotifyClient(const TInt aCommand, const TInt aStatus = KErrNone);
       
    53 
    50 private:
    54 private:
    51 
       
    52     // Symbian constructors
    55     // Symbian constructors
    53     void ConstructL();
    56     void ConstructL();
    54     TMSServerSession(TMSServer& aServer);
    57     TMSServerSession(TMSServer& aServer);
    55 
    58 
    56     // Client-server message handlers
    59     // Client-server message handlers
    62     void GetSupportedCodecsL(const RMessage2& aMessage, TMSStreamType strmType);
    65     void GetSupportedCodecsL(const RMessage2& aMessage, TMSStreamType strmType);
    63     void SetOutput(const RMessage2& aMessage);
    66     void SetOutput(const RMessage2& aMessage);
    64     void SetVolLevel(const RMessage2& aMessage);
    67     void SetVolLevel(const RMessage2& aMessage);
    65     void SetMicGain(const RMessage2& aMessage);
    68     void SetMicGain(const RMessage2& aMessage);
    66 
    69 
    67     // Send notification to the client
    70     // for Inband tone player
    68     void NotifyClient();
    71     void StartInbandTone(const RMessage2& aMessage);
       
    72     void StopInbandTone(const RMessage2& aMessage);
    69 
    73 
    70 private:
    74 private:
    71     TMSServer& iServer;
    75     TMSServer& iServer;
    72     RHandleBase iTMSCallSessionHandle;
    76     RHandleBase iTMSCallSessionHandle;
    73     TSharedData iShared;
    77     TSharedData iShared;
    74     CMMFDevSound* iDevSound; // To get supported codecs
    78     CMMFDevSound* iDevSound; // To get supported codecs
    75     TBool iMsgQueued;
    79     TBool iMsgQueued;
    76     RMsgQueue<TmsMsgBuf> iMsgQueue;
    80     RMsgQueue<TmsMsgBuf> iMsgQueue;
    77     TmsMsgBuf iMsgBuffer;
    81     TmsMsgBuf iMsgBuffer;
       
    82     TMSAudioInbandTonePlayer* iInbandTonePlayer;
       
    83     TBool iHasRtPlayer;
    78     };
    84     };
    79 
    85 
    80 } //namespace TMS
    86 } //namespace TMS
    81 
    87 
    82 #endif //__TMSSERVERSESSION_H
    88 #endif //__TMSSERVERSESSION_H