17 |
17 |
18 |
18 |
19 #ifndef MUSHENGREVEIVESESSION_H |
19 #ifndef MUSHENGREVEIVESESSION_H |
20 #define MUSHENGREVEIVESESSION_H |
20 #define MUSHENGREVEIVESESSION_H |
21 |
21 |
|
22 // INCLUDES |
|
23 #include "musengmcesession.h" |
|
24 #include "musenguriparser.h" |
|
25 #include "musunittesting.h" |
|
26 #include "lcvideoplayer.h" |
|
27 #include <mcemediasink.h> |
|
28 |
|
29 // FORWARD DECLARATIONS |
|
30 class MMusEngReceiveSessionObserver; |
|
31 class CMceInSession; |
22 |
32 |
23 |
33 |
24 #include "musengmcesession.h" |
34 class CMusEngReceiveSession : |
25 |
35 public CMusEngMceSession, |
26 |
36 public MLcVideoPlayer |
27 class MMusEngReceiveSessionObserver; |
|
28 |
|
29 class CMusEngReceiveSession : public CMusEngMceSession |
|
30 |
|
31 { |
37 { |
32 |
38 |
33 public: // Contructors and destructor |
39 public: // Contructors and destructor |
34 |
40 |
35 /** |
41 /** |
36 * Creates new MultimediaSharing Receive session. |
42 * Creates new MultimediaSharing Receive session. |
37 * |
43 * |
38 * @param aRect UI drawing area. It is allowed handle from engine |
44 * @param aRect UI drawing area. It is allowed handle from engine |
39 * @param aEngObserver Engine specific callbacks |
45 * @param aEngObserver Engine specific callbacks |
40 * @param aSessionObserver Session specific callbacks |
46 * @param aSessionObserver Session specific callbacks |
41 * @return CMusEngReceiveSession* New instanse of specified class |
47 * @return CMusEngReceiveSession* New instanse of specified class |
42 */ |
48 */ |
43 IMPORT_C static CMusEngReceiveSession* NewL( |
49 static CMusEngReceiveSession* NewL( const TRect& aRect ); |
44 const TRect& aRect, |
|
45 MMusEngReceiveSessionObserver* aSessionObserver ); |
|
46 /** |
50 /** |
47 * Destructor |
51 * Destructor |
48 * |
52 * |
49 * @since S60 v3.2 |
53 * @since S60 v3.2 |
50 */ |
54 */ |
51 ~CMusEngReceiveSession(); |
55 ~CMusEngReceiveSession(); |
|
56 |
52 |
57 |
|
58 public: // from MLcSession |
|
59 |
|
60 void EstablishLcSessionL(); |
|
61 |
|
62 MLcVideoPlayer* RemoteVideoPlayer(); |
|
63 |
|
64 const TDesC& RemoteDisplayName(); |
|
65 |
|
66 |
|
67 public: // from MLcVideoPlayer |
|
68 |
|
69 TLcVideoPlayerState LcVideoPlayerState() const; |
|
70 |
|
71 TBool LcIsPlayingL(); |
|
72 |
|
73 void LcPlayL(); |
|
74 |
|
75 void LcPauseL(); |
|
76 |
|
77 MLcWindow* LcWindow(); |
53 |
78 |
54 public: // API |
79 MLcCameraControl* LcCameraControl(); |
|
80 |
|
81 MLcFileControl* LcSourceFile(); |
|
82 |
|
83 MLcFileControl* LcDestinationFile(); |
|
84 |
|
85 MLcAudioControl* LcAudioControl(); |
|
86 |
|
87 MLcZoomControl* LcZoomControl(); |
|
88 |
|
89 MLcBrightnessControl* LcBrightnessControl(); |
55 |
90 |
56 /** |
91 RPointerArray< MLcValueControl >& LcExtensionControls(); |
57 * Accept or deny processed invitation |
92 |
58 * |
93 |
59 * @param aAccept ETrue if session is to be accepted and EFalse if |
94 protected: // CONSTRUCTORS |
60 * to be rejected. |
95 |
|
96 CMusEngReceiveSession( const TRect& aRect ); |
|
97 |
|
98 void ConstructL(); |
|
99 |
|
100 |
|
101 protected: // DATA |
|
102 |
|
103 // identity of originator parsed form P-Asserted-Identity field |
|
104 TBuf8<KMaxUriLength> iIdentity; |
|
105 |
|
106 HBufC8* iOriginator; |
|
107 |
|
108 HBufC* iRemoteDisplayName; |
|
109 |
|
110 /** |
|
111 * Dummy member variable to implement MLcVideoPlayer::LcExtensionControls |
61 */ |
112 */ |
62 IMPORT_C void AcceptInvitationL(const TBool& aAccept); |
113 RPointerArray< MLcValueControl > iValueControls; |
63 |
|
64 |
|
65 public: |
|
66 |
|
67 /** |
|
68 * Sets callback interface pointer |
|
69 * |
|
70 * @param aSessionObserver Pointer to class which implements interface |
|
71 */ |
|
72 IMPORT_C void SetSessionObserver( |
|
73 MMusEngReceiveSessionObserver* aSessionObserver ); |
|
74 |
|
75 |
|
76 |
|
77 protected: // internal API |
|
78 |
|
79 /** |
|
80 * |
|
81 * @since S60 v3.2 |
|
82 */ |
|
83 TBool IsRtpcInactivityTimoutSupported(); |
|
84 |
|
85 |
|
86 private: // CONSTRUCTORS |
|
87 |
|
88 CMusEngReceiveSession( MMusEngReceiveSessionObserver* aSessionObserver, |
|
89 const TRect& aRect ); |
|
90 |
|
91 void ConstructL(); |
|
92 |
|
93 public: // HELPERS |
|
94 |
|
95 //CMceInSession* InSession(); |
|
96 |
|
97 MMusEngReceiveSessionObserver* ReceiveSessionObserver(); |
|
98 |
|
99 // void CompleteSessionStructureL( CMceInSession& aInSession ); |
|
100 |
|
101 |
|
102 public: // DATA |
|
103 |
|
104 // CMceInSession* iTemporaryInSession; // Owned |
|
105 TBool iAccepInvitation; |
|
106 |
|
107 }; |
114 }; |
108 |
115 |
109 #endif |
116 #endif |
110 |
117 |