14 * Description: Defines factory object for creating VoIP downlink and uplink |
14 * Description: Defines factory object for creating VoIP downlink and uplink |
15 * streams as well as DTMF tone player. |
15 * streams as well as DTMF tone player. |
16 * |
16 * |
17 */ |
17 */ |
18 |
18 |
19 #ifndef __VOIPUTILITYFACTORY_H |
19 #ifndef VOIPUTILITYFACTORY_H |
20 #define __VOIPUTILITYFACTORY_H |
20 #define VOIPUTILITYFACTORY_H |
21 |
21 |
22 #include <voipaudiocommon.h> |
22 #include <voipaudiocommon.h> |
23 #include <voipdatabuffer.h> |
23 #include <voipdatabuffer.h> |
24 |
24 |
25 // FORWARD DECLARATIONS |
25 // FORWARD DECLARATIONS |
30 class CVoIPJitterBufferIntfc; |
30 class CVoIPJitterBufferIntfc; |
31 |
31 |
32 /** |
32 /** |
33 * CVoIPUtilityFactory class |
33 * CVoIPUtilityFactory class |
34 * |
34 * |
35 * ?more_complete_description |
|
36 * |
|
37 * @lib VoIPAudioIntfc.dll |
35 * @lib VoIPAudioIntfc.dll |
38 * |
36 * |
39 */ |
37 */ |
40 class CVoIPUtilityFactory |
38 class CVoIPUtilityFactory |
41 { |
39 { |
42 public: |
40 public: |
43 /** |
41 /** |
44 * TVoIPCallType |
42 * TVoIPCallType |
45 * ?description |
|
46 * |
|
47 */ |
43 */ |
48 enum TVoIPCallType |
44 enum TVoIPCallType |
49 { |
45 { |
50 EVoIPCall, |
46 EVoIPCall, |
51 EPoCCall |
47 EPoCCall |
52 }; |
48 }; |
53 |
49 |
54 public: |
50 public: |
55 |
51 |
56 /** |
52 /** |
57 * ?description |
53 * CreateFactory |
58 * |
|
59 * @since S60 v5.0 |
|
60 * @param CVoIPUtilityFactory*& |
54 * @param CVoIPUtilityFactory*& |
61 * @return TInt |
55 * @return TInt |
62 */ |
56 */ |
63 IMPORT_C static TInt CreateFactory(CVoIPUtilityFactory*& aFactory); |
57 IMPORT_C static TInt CreateFactory(CVoIPUtilityFactory*& aFactory); |
64 |
58 |
65 /** |
59 /** |
66 * Destructor |
60 * Destructor |
67 * |
|
68 * @since S60 v5.0 |
|
69 * @param none |
61 * @param none |
70 * @return none |
62 * @return none |
71 */ |
63 */ |
72 IMPORT_C ~CVoIPUtilityFactory(); |
64 IMPORT_C ~CVoIPUtilityFactory(); |
73 |
65 |
74 /** |
66 /** |
75 * ?description |
67 * CreateDownlinkStream |
76 * |
|
77 * @since S60 v5.0 |
|
78 * @param TVersion |
68 * @param TVersion |
79 * @param TCallType |
69 * @param TCallType |
80 * @param CVoIPAudioDownlinkStream*& |
70 * @param CVoIPAudioDownlinkStream*& |
81 * @return TInt |
71 * @return TInt |
82 */ |
72 */ |
83 IMPORT_C TInt CreateDownlinkStream(const TVersion aVersion, |
73 IMPORT_C TInt CreateDownlinkStream(const TVersion aVersion, |
84 const TVoIPCallType aCallType, CVoIPAudioDownlinkStream*& aDnLink); |
74 const TVoIPCallType aCallType, CVoIPAudioDownlinkStream*& aDnLink); |
85 |
75 |
86 /** |
76 /** |
87 * ?description |
77 * CreateDownlinkStream with jitter buffer management |
88 * |
|
89 * @since S60 v5.0 |
|
90 * @param TVersion |
78 * @param TVersion |
91 * @param CVoIPJitterBufferIntfc*& |
79 * @param CVoIPJitterBufferIntfc*& |
92 * @param CVoIPAudioDownlinkStream*& |
80 * @param CVoIPAudioDownlinkStream*& |
93 * @return TInt |
81 * @return TInt |
94 */ |
82 */ |
95 IMPORT_C TInt CreateDownlinkStream(const TVersion aVersion, |
83 IMPORT_C TInt CreateDownlinkStream(const TVersion aVersion, |
96 CVoIPJitterBufferIntfc*& aJBIntfc, |
84 CVoIPJitterBufferIntfc*& aJBIntfc, |
97 CVoIPAudioDownlinkStream*& aDnLink); |
85 CVoIPAudioDownlinkStream*& aDnLink); |
98 |
86 |
99 /** |
87 /** |
100 * ?description |
88 * CreateUplinkStream |
101 * |
|
102 * @since S60 v5.0 |
|
103 * @param TVersion |
89 * @param TVersion |
104 * @param TCallType |
90 * @param TCallType |
105 * @param CVoIPAudioUplinkStream*& |
91 * @param CVoIPAudioUplinkStream*& |
106 * @return TInt |
92 * @return TInt |
107 */ |
93 */ |
108 IMPORT_C TInt CreateUplinkStream(const TVersion aVersion, |
94 IMPORT_C TInt CreateUplinkStream(const TVersion aVersion, |
109 const TVoIPCallType aCallType, CVoIPAudioUplinkStream*& aUpLink); |
95 const TVoIPCallType aCallType, CVoIPAudioUplinkStream*& aUpLink); |
110 |
96 |
111 /** |
97 /** |
112 * ?description |
98 * CreateDTMFTonePlayer |
113 * |
|
114 * @since S60 v5.0 |
|
115 * @param CDTMFTonePlayer*& |
99 * @param CDTMFTonePlayer*& |
116 * @return TInt |
100 * @return TInt |
117 */ |
101 */ |
118 IMPORT_C TInt CreateDTMFTonePlayer(CDTMFTonePlayer*& aDtmfPlayer); |
102 IMPORT_C TInt CreateDTMFTonePlayer(CDTMFTonePlayer*& aDtmfPlayer); |
119 |
103 |
120 /** |
104 /** |
121 * ?description |
105 * CreateBuffer |
122 * |
|
123 * @since S60 v5.0 |
|
124 * @param CVoIPDataBuffer*& |
106 * @param CVoIPDataBuffer*& |
125 * @param const CVoIPDataBuffer::TVoIPBufferType |
107 * @param const CVoIPDataBuffer::TVoIPBufferType |
126 * @param const TVoIPCodecFormat aCodecFormat - default EG711 assumes |
108 * @param const TVoIPCodecFormat aCodecFormat - default EG711 assumes |
127 * request to create 162-byte buffer for G711 codec. |
109 * request to create 162-byte buffer for G711 codec. |
128 * @return TInt |
110 * @return TInt |
130 IMPORT_C TInt CreateBuffer(CVoIPDataBuffer*& aBuffer, |
112 IMPORT_C TInt CreateBuffer(CVoIPDataBuffer*& aBuffer, |
131 const CVoIPDataBuffer::TVoIPBufferType aType, |
113 const CVoIPDataBuffer::TVoIPBufferType aType, |
132 const TVoIPCodecFormat aCodecFormat = EG711); |
114 const TVoIPCodecFormat aCodecFormat = EG711); |
133 |
115 |
134 /** |
116 /** |
135 * ?description |
117 * GetSupportedDownlinkFormats |
136 * |
|
137 * @since S60 v5.0 |
|
138 * @param RArray<TVoIPCodecFormat>& |
118 * @param RArray<TVoIPCodecFormat>& |
139 * @return TInt - |
119 * @return TInt - |
140 */ |
120 */ |
141 IMPORT_C TInt GetSupportedDownlinkFormats( |
121 IMPORT_C TInt GetSupportedDownlinkFormats( |
142 RArray<TVoIPCodecFormat>& aFormats); |
122 RArray<TVoIPCodecFormat>& aFormats); |
143 |
123 |
144 /** |
124 /** |
145 * ?description |
125 * GetSupportedUplinkFormats |
146 * |
|
147 * @since S60 v5.0 |
|
148 * @param RArray<TVoIPCodecFormat>& |
126 * @param RArray<TVoIPCodecFormat>& |
149 * @return TInt - |
127 * @return TInt - |
150 */ |
128 */ |
151 IMPORT_C TInt GetSupportedUplinkFormats( |
129 IMPORT_C TInt GetSupportedUplinkFormats( |
152 RArray<TVoIPCodecFormat>& aFormats); |
130 RArray<TVoIPCodecFormat>& aFormats); |
153 |
131 |
154 private: |
132 private: |
155 |
133 |
156 /** |
134 /** |
157 * Constructor |
135 * Constructor |
158 * |
|
159 * @since S60 v5.0 |
|
160 * @param none |
136 * @param none |
161 * @return none |
137 * @return none |
162 */ |
138 */ |
163 CVoIPUtilityFactory(); |
139 CVoIPUtilityFactory(); |
164 |
140 |
165 /** |
141 /** |
166 * Symbian constructor |
142 * Symbian constructor |
167 * |
|
168 * @since S60 v5.0 |
|
169 * @param none |
143 * @param none |
170 * @return void |
144 * @return void |
171 */ |
145 */ |
172 void ConstructL(); |
146 void ConstructL(); |
173 |
147 |
174 private: |
148 private: |
175 |
149 |
176 CVoIPUtilityFactoryImpl* iVoIPUtilityFactoryImpl; |
150 CVoIPUtilityFactoryImpl* iVoIPUtilityFactoryImpl; |
177 |
|
178 }; |
151 }; |
179 |
152 |
180 #endif //__VOIPUTILITYFACTORY_H |
153 #endif //VOIPUTILITYFACTORY_H |
181 |
154 |
182 // End of file |
155 // End of file |