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