64 #define PRM_REGISTER_DYNAMIC_RESOURCE BTrace::ERegisterDynamicResource |
54 #define PRM_REGISTER_DYNAMIC_RESOURCE BTrace::ERegisterDynamicResource |
65 #define PRM_DEREGISTER_DYNAMIC_RESOURCE BTrace::EDeRegisterDynamicResource |
55 #define PRM_DEREGISTER_DYNAMIC_RESOURCE BTrace::EDeRegisterDynamicResource |
66 #define PRM_REGISTER_RESOURCE_DEPENDENCY BTrace::ERegisterResourceDependency |
56 #define PRM_REGISTER_RESOURCE_DEPENDENCY BTrace::ERegisterResourceDependency |
67 #define PRM_DEREGISTER_RESOURCE_DEPENDENCY BTrace::EDeRegisterResourceDependency |
57 #define PRM_DEREGISTER_RESOURCE_DEPENDENCY BTrace::EDeRegisterResourceDependency |
68 #endif |
58 #endif |
|
59 |
|
60 #define APPEND_VAL(val) \ |
|
61 { \ |
|
62 printBuf.Append((TUint8 *)&(val), sizeof(val)); \ |
|
63 } |
|
64 #define APPEND_STRING(des_ptr) \ |
|
65 { \ |
|
66 TUint length = (des_ptr)->Length(); \ |
|
67 printBuf.Append((TUint8 *)&length, sizeof(TUint)); \ |
|
68 printBuf.Append(*(des_ptr)); \ |
|
69 } |
|
70 |
69 //Macro to output resource information |
71 //Macro to output resource information |
70 #define PRM_REGISTER_RESOURCE_TRACE \ |
72 #define PRM_REGISTER_RESOURCE_TRACE \ |
71 { \ |
73 { \ |
72 TBuf8<80> printBuf; \ |
74 TBuf8<80> printBuf; \ |
73 printBuf.Zero(); \ |
75 printBuf.Zero(); \ |
74 TraceFormatPrint(printBuf, "%S %d %d %d", pR->iName, pResInfo->iMinLevel, pResInfo->iMaxLevel, \ |
76 APPEND_VAL(pResInfo->iMinLevel); \ |
75 pResInfo->iDefaultLevel); \ |
77 APPEND_VAL(pResInfo->iMaxLevel); \ |
|
78 APPEND_VAL(pResInfo->iDefaultLevel); \ |
|
79 APPEND_STRING(pR->iName); \ |
76 BTraceContextN(BTrace::EResourceManager, PRM_REGISTER_RESOURCE, resCount+1, pR, printBuf.Ptr(), \ |
80 BTraceContextN(BTrace::EResourceManager, PRM_REGISTER_RESOURCE, resCount+1, pR, printBuf.Ptr(), \ |
77 printBuf.Length()); \ |
81 printBuf.Length()); \ |
78 } |
82 } |
79 |
83 |
80 //Macro to output client details. Used during client registration |
84 //Macro to output client details. Used during client registration |
81 #define PRM_CLIENT_REGISTER_TRACE \ |
85 #define PRM_CLIENT_REGISTER_TRACE \ |
82 { \ |
86 { \ |
|
87 TBuf8<80> printBuf; \ |
|
88 printBuf.Zero(); \ |
|
89 APPEND_STRING(pC->iName); \ |
83 BTraceContextN(BTrace::EResourceManager, PRM_REGISTER_CLIENT, aClientId, (TUint)pC, \ |
90 BTraceContextN(BTrace::EResourceManager, PRM_REGISTER_CLIENT, aClientId, (TUint)pC, \ |
84 pC->iName->Ptr(), pC->iName->Length()); \ |
91 printBuf.Ptr(), printBuf.Length()); \ |
85 } |
92 } |
86 |
93 |
87 //Used during client deregistration |
94 //Used during client deregistration |
88 #define PRM_CLIENT_DEREGISTER_TRACE \ |
95 #define PRM_CLIENT_DEREGISTER_TRACE \ |
89 { \ |
96 { \ |
|
97 TBuf8<80> printBuf; \ |
|
98 printBuf.Zero(); \ |
|
99 APPEND_STRING(pC->iName); \ |
90 BTraceContextN(BTrace::EResourceManager, PRM_DEREGISTER_CLIENT, aClientId, \ |
100 BTraceContextN(BTrace::EResourceManager, PRM_DEREGISTER_CLIENT, aClientId, \ |
91 (TUint)pC, pC->iName->Ptr(), pC->iName->Length()); \ |
101 (TUint)pC, printBuf.Ptr(), printBuf.Length()); \ |
92 } |
102 } |
93 |
103 |
94 //Used to resource state change operation.Used at the start of the operation. |
104 //Used to resource state change operation.Used at the start of the operation. |
95 #define PRM_CLIENT_CHANGE_STATE_START_TRACE \ |
105 #define PRM_CLIENT_CHANGE_STATE_START_TRACE \ |
96 { \ |
106 { \ |
97 TBuf8<80> printBuf; \ |
107 TBuf8<80> printBuf; \ |
98 printBuf.Zero(); \ |
108 printBuf.Zero(); \ |
99 TraceFormatPrint(printBuf, "%S %S %d", pC->iName, pR->iName, aNewState); \ |
109 APPEND_VAL(aNewState); \ |
|
110 APPEND_STRING(pC->iName); \ |
|
111 APPEND_STRING(pR->iName); \ |
100 BTraceContextN(BTrace::EResourceManager, PRM_CLIENT_STATE_CHANGE_START, pC->iClientId, \ |
112 BTraceContextN(BTrace::EResourceManager, PRM_CLIENT_STATE_CHANGE_START, pC->iClientId, \ |
101 aResourceId, printBuf.Ptr(), printBuf.Length()); \ |
113 aResourceId, printBuf.Ptr(), printBuf.Length()); \ |
102 } |
114 } |
103 |
115 |
104 //Used to resource state change operation. Used at the end of the operation. |
116 //Used to resource state change operation. Used at the end of the operation. |
105 #define PRM_CLIENT_CHANGE_STATE_END_TRACE \ |
117 #define PRM_CLIENT_CHANGE_STATE_END_TRACE \ |
106 { \ |
118 { \ |
107 TBuf8<80> printBuf; \ |
119 TBuf8<80> printBuf; \ |
108 printBuf.Zero(); \ |
120 printBuf.Zero(); \ |
109 TraceFormatPrint(printBuf, "%S %S %d %d", pC->iName, pR->iName, r, aNewState); \ |
121 APPEND_VAL(r); \ |
|
122 APPEND_VAL(aNewState); \ |
|
123 APPEND_STRING(pC->iName); \ |
|
124 APPEND_STRING(pR->iName); \ |
110 BTraceContextN(BTrace::EResourceManager, PRM_CLIENT_STATE_CHANGE_END, pC->iClientId, \ |
125 BTraceContextN(BTrace::EResourceManager, PRM_CLIENT_STATE_CHANGE_END, pC->iClientId, \ |
111 aResourceId, printBuf.Ptr(), printBuf.Length()); \ |
126 aResourceId, printBuf.Ptr(), printBuf.Length()); \ |
112 } |
127 } |
113 |
128 |
114 //Used during request notificiation |
129 //Used during request notificiation |
154 BTraceContext4(BTrace::EResourceManager, PRM_MEMORY_USAGE, size); \ |
167 BTraceContext4(BTrace::EResourceManager, PRM_MEMORY_USAGE, size); \ |
155 } |
168 } |
156 |
169 |
157 #define PRM_PSL_RESOURCE_GET_STATE_START_TRACE \ |
170 #define PRM_PSL_RESOURCE_GET_STATE_START_TRACE \ |
158 { \ |
171 { \ |
159 TBuf8<80> printBuf; \ |
172 TBuf8<80> printBuf; \ |
160 printBuf.Zero(); \ |
173 printBuf.Zero(); \ |
161 TraceFormatPrint(printBuf, "%S ", iName); \ |
174 APPEND_STRING(iName); \ |
162 BTraceContextN(BTrace::EResourceManager, PRM_PSL_RESOURCE_GET_STATE_START, aRequest.ClientId(), \ |
175 BTraceContextN(BTrace::EResourceManager, PRM_PSL_RESOURCE_GET_STATE_START, aRequest.ClientId(), \ |
163 aRequest.ResourceId(), printBuf.Ptr(), printBuf.Length()); \ |
176 aRequest.ResourceId(), printBuf.Ptr(), printBuf.Length()); \ |
164 } |
177 } |
165 |
178 |
166 //Used during get resource state operation, used at the start of the operation. |
179 //Used during get resource state operation, used at the start of the operation. |
167 #define PRM_RESOURCE_GET_STATE_START_TRACE \ |
180 #define PRM_RESOURCE_GET_STATE_START_TRACE \ |
168 { \ |
181 { \ |
169 TBuf8<80> printBuf; \ |
182 TBuf8<80> printBuf; \ |
170 printBuf.Zero(); \ |
183 printBuf.Zero(); \ |
171 TraceFormatPrint(printBuf, "%S %S", pC->iName, pR->iName); \ |
184 APPEND_STRING(pC->iName); \ |
|
185 APPEND_STRING(pR->iName); \ |
172 BTraceContextN(BTrace::EResourceManager, PRM_CLIENT_GET_STATE_START, pC->iClientId, aResourceId,\ |
186 BTraceContextN(BTrace::EResourceManager, PRM_CLIENT_GET_STATE_START, pC->iClientId, aResourceId,\ |
173 printBuf.Ptr(), printBuf.Length());\ |
187 printBuf.Ptr(), printBuf.Length());\ |
174 } |
188 } |
175 |
189 |
176 #define PRM_PSL_RESOURCE_GET_STATE_END_TRACE \ |
190 #define PRM_PSL_RESOURCE_GET_STATE_END_TRACE \ |
177 { \ |
191 { \ |
178 TBuf8<80> printBuf; \ |
192 TBuf8<80> printBuf; \ |
179 printBuf.Zero(); \ |
193 printBuf.Zero(); \ |
180 TraceFormatPrint(printBuf, "%S %d %d", iName, iCurLevel,retVal); \ |
194 APPEND_VAL(iCurLevel); \ |
|
195 APPEND_VAL(retVal); \ |
|
196 APPEND_STRING(iName); \ |
181 BTraceContextN(BTrace::EResourceManager, PRM_PSL_RESOURCE_GET_STATE_END, aRequest.ClientId(), \ |
197 BTraceContextN(BTrace::EResourceManager, PRM_PSL_RESOURCE_GET_STATE_END, aRequest.ClientId(), \ |
182 aRequest.ResourceId(), printBuf.Ptr(), printBuf.Length()); \ |
198 aRequest.ResourceId(), printBuf.Ptr(), printBuf.Length()); \ |
183 } |
199 } |
184 |
200 |
185 //Used during get resource state operation, used at the end of the operation. |
201 //Used during get resource state operation, used at the end of the operation. |
186 #define PRM_RESOURCE_GET_STATE_END_TRACE \ |
202 #define PRM_RESOURCE_GET_STATE_END_TRACE \ |
187 { \ |
203 { \ |
188 TBuf8<80> printBuf; \ |
204 TBuf8<80> printBuf; \ |
189 printBuf.Zero(); \ |
205 printBuf.Zero(); \ |
190 TraceFormatPrint(printBuf, "%S %S %d %d", pC->iName, pR->iName, aState, r); \ |
206 APPEND_VAL(aState); \ |
|
207 APPEND_VAL(r); \ |
|
208 APPEND_STRING(pC->iName); \ |
|
209 APPEND_STRING(pR->iName); \ |
191 BTraceContextN(BTrace::EResourceManager, PRM_CLIENT_GET_STATE_END, pC->iClientId, aResourceId, \ |
210 BTraceContextN(BTrace::EResourceManager, PRM_CLIENT_GET_STATE_END, pC->iClientId, aResourceId, \ |
192 printBuf.Ptr(), printBuf.Length());\ |
211 printBuf.Ptr(), printBuf.Length());\ |
193 } |
212 } |
194 |
213 |
195 //Used during cancellation of long latency operation |
214 //Used during cancellation of long latency operation |
196 #define PRM_RESOURCE_CANCEL_LONGLATENCY_OPERATION_TRACE \ |
215 #define PRM_RESOURCE_CANCEL_LONGLATENCY_OPERATION_TRACE \ |
197 { \ |
216 { \ |
198 TBuf8<80> printBuf; \ |
217 TBuf8<80> printBuf; \ |
199 printBuf.Zero(); \ |
218 printBuf.Zero(); \ |
200 TraceFormatPrint(printBuf, "%S %S %d", pC->iName, pR->iName, r); \ |
219 APPEND_VAL(r); \ |
|
220 APPEND_STRING(pC->iName); \ |
|
221 APPEND_STRING(pR->iName); \ |
201 BTraceContextN(BTrace::EResourceManager, PRM_CANCEL_LONG_LATENCY_OPERATION, pC->iClientId, \ |
222 BTraceContextN(BTrace::EResourceManager, PRM_CANCEL_LONG_LATENCY_OPERATION, pC->iClientId, \ |
202 aResourceId, printBuf.Ptr(), printBuf.Length()); \ |
223 aResourceId, printBuf.Ptr(), printBuf.Length()); \ |
203 } |
224 } |
204 |
225 |
205 #define PRM_PSL_RESOURCE_CHANGE_STATE_START_TRACE \ |
226 #define PRM_PSL_RESOURCE_CHANGE_STATE_START_TRACE \ |
206 { \ |
227 { \ |
207 TBuf8<80> printBuf; \ |
228 TBuf8<80> printBuf; \ |
208 printBuf.Zero(); \ |
229 printBuf.Zero(); \ |
209 TraceFormatPrint(printBuf, "%S %d %d", iName, iCurLevel, aRequest.Level()); \ |
230 APPEND_VAL(iCurLevel); \ |
|
231 TInt RequestLevel = aRequest.Level(); \ |
|
232 APPEND_VAL(RequestLevel); \ |
|
233 APPEND_STRING(iName); \ |
210 BTraceContextN(BTrace::EResourceManager, PRM_PSL_RESOURCE_CHANGE_STATE_START, aRequest.ClientId(), \ |
234 BTraceContextN(BTrace::EResourceManager, PRM_PSL_RESOURCE_CHANGE_STATE_START, aRequest.ClientId(), \ |
211 aRequest.ResourceId(), printBuf.Ptr(), printBuf.Length()); \ |
235 aRequest.ResourceId(), printBuf.Ptr(), printBuf.Length()); \ |
212 } |
236 } |
213 |
237 |
214 #define PRM_PSL_RESOURCE_CHANGE_STATE_END_TRACE \ |
238 #define PRM_PSL_RESOURCE_CHANGE_STATE_END_TRACE \ |
215 { \ |
239 { \ |
216 TBuf8<80> printBuf; \ |
240 TBuf8<80> printBuf; \ |
217 printBuf.Zero(); \ |
241 printBuf.Zero(); \ |
218 TraceFormatPrint(printBuf, "%S %d %d %d", iName, iCurLevel, aRequest.Level(),retVal); \ |
242 APPEND_VAL(iCurLevel); \ |
|
243 TInt RequestLevel = aRequest.Level(); \ |
|
244 APPEND_VAL(RequestLevel); \ |
|
245 APPEND_VAL(retVal); \ |
|
246 APPEND_STRING(iName); \ |
219 BTraceContextN(BTrace::EResourceManager, PRM_PSL_RESOURCE_CHANGE_STATE_END, aRequest.ClientId(), \ |
247 BTraceContextN(BTrace::EResourceManager, PRM_PSL_RESOURCE_CHANGE_STATE_END, aRequest.ClientId(), \ |
220 aRequest.ResourceId(), printBuf.Ptr(), printBuf.Length()); \ |
248 aRequest.ResourceId(), printBuf.Ptr(), printBuf.Length()); \ |
221 } |
249 } |
222 |
250 |
223 #define PRM_PSL_RESOURCE_CREATE_TRACE \ |
251 #define PRM_PSL_RESOURCE_CREATE_TRACE \ |
224 { \ |
252 { \ |
225 TBuf8<80> printBuf; \ |
253 TBuf8<80> printBuf; \ |
226 printBuf.Zero(); \ |
254 printBuf.Zero(); \ |
227 TraceFormatPrint(printBuf, "%d %d %S", iDefaultLevel, iFlags, iName); \ |
255 APPEND_VAL(iDefaultLevel); \ |
|
256 APPEND_VAL(iFlags); \ |
|
257 APPEND_STRING(iName); \ |
228 BTraceContextN(BTrace::EResourceManager, PRM_PSL_RESOURCE_CREATE, iMinLevel, iMaxLevel, \ |
258 BTraceContextN(BTrace::EResourceManager, PRM_PSL_RESOURCE_CREATE, iMinLevel, iMaxLevel, \ |
229 printBuf.Ptr(), printBuf.Length()); \ |
259 printBuf.Ptr(), printBuf.Length()); \ |
230 } |
260 } |
231 |
261 |
232 //Used during booting of resource manager |
262 //Used during booting of resource manager |
233 //Calling TraceFormatPrint just to avoid warning |
263 //Calling TraceFormatPrint just to avoid warning |
234 #define PRM_BOOTING_TRACE \ |
264 #define PRM_BOOTING_TRACE \ |
235 { \ |
265 { \ |
236 TPtr8 zeroDes(NULL, 0); \ |
|
237 TraceFormatPrint(zeroDes, "%d", aReason); \ |
|
238 BTraceContext4(BTrace::EResourceManager, PRM_BOOTING, (TUint)aReason); \ |
266 BTraceContext4(BTrace::EResourceManager, PRM_BOOTING, (TUint)aReason); \ |
239 } |
267 } |
240 |
268 |
241 #ifdef PRM_ENABLE_EXTENDED_VERSION |
269 #ifdef PRM_ENABLE_EXTENDED_VERSION |
242 //Macro to output static resource with dependency |
270 //Macro to output static resource with dependency |
243 #define PRM_REGISTER_STATIC_RESOURCE_WITH_DEPENDENCY_TRACE \ |
271 #define PRM_REGISTER_STATIC_RESOURCE_WITH_DEPENDENCY_TRACE \ |
244 { \ |
272 { \ |
245 TBuf8<80> pBuf; \ |
273 TBuf8<80> printBuf; \ |
246 pBuf.Zero(); \ |
274 printBuf.Zero(); \ |
247 TraceFormatPrint(pBuf, "%S %d %d %d", pR->iName, pResInfo->iMinLevel, pResInfo->iMaxLevel, \ |
275 APPEND_VAL(pResInfo->iMinLevel); \ |
248 pResInfo->iDefaultLevel); \ |
276 APPEND_VAL(pResInfo->iMaxLevel); \ |
|
277 APPEND_VAL(pResInfo->iDefaultLevel); \ |
|
278 APPEND_STRING(pR->iName); \ |
249 BTraceContextN(BTrace::EResourceManager, PRM_REGISTER_STATIC_RESOURCE_WITH_DEPENDENCY, pR->iResourceId, \ |
279 BTraceContextN(BTrace::EResourceManager, PRM_REGISTER_STATIC_RESOURCE_WITH_DEPENDENCY, pR->iResourceId, \ |
250 pR, pBuf.Ptr(), pBuf.Length()); \ |
280 pR, printBuf.Ptr(), printBuf.Length()); \ |
251 } |
281 } |
252 |
282 |
253 //Macro to output dynamic resource registration. |
283 //Macro to output dynamic resource registration. |
254 #define PRM_REGISTER_DYNAMIC_RESOURCE_TRACE \ |
284 #define PRM_REGISTER_DYNAMIC_RESOURCE_TRACE \ |
255 { \ |
285 { \ |
256 TBuf8<80> printBuf; \ |
286 TBuf8<80> printBuf; \ |
257 printBuf.Zero(); \ |
287 printBuf.Zero(); \ |
258 TraceFormatPrint(printBuf, "%S %S %d", aClientPtr->iName, aPDRes->iName, aPDRes); \ |
288 APPEND_VAL(aPDRes); \ |
|
289 APPEND_STRING(aClientPtr->iName); \ |
|
290 APPEND_STRING(aPDRes->iName); \ |
259 BTraceContextN(BTrace::EResourceManager, PRM_REGISTER_DYNAMIC_RESOURCE, aClientPtr->iClientId, \ |
291 BTraceContextN(BTrace::EResourceManager, PRM_REGISTER_DYNAMIC_RESOURCE, aClientPtr->iClientId, \ |
260 aPDRes->iResourceId, printBuf.Ptr(), printBuf.Length()); \ |
292 aPDRes->iResourceId, printBuf.Ptr(), printBuf.Length()); \ |
261 } |
293 } |
262 |
294 |
263 //Macro to output dynamic resource deregistration. |
295 //Macro to output dynamic resource deregistration. |
264 #define PRM_DEREGISTER_DYNAMIC_RESOURCE_TRACE \ |
296 #define PRM_DEREGISTER_DYNAMIC_RESOURCE_TRACE \ |
265 { \ |
297 { \ |
266 TBuf8<80> printBuf; \ |
298 TBuf8<80> printBuf; \ |
267 printBuf.Zero(); \ |
299 printBuf.Zero(); \ |
268 TraceFormatPrint(printBuf, "%S %S %d %d", aClientPtr->iName, pDR->iName, pDR, level); \ |
300 APPEND_VAL(pDR); \ |
|
301 APPEND_VAL(level); \ |
|
302 APPEND_STRING(aClientPtr->iName); \ |
|
303 APPEND_STRING(pDR->iName); \ |
269 BTraceContextN(BTrace::EResourceManager, PRM_DEREGISTER_DYNAMIC_RESOURCE, aClientPtr->iClientId, \ |
304 BTraceContextN(BTrace::EResourceManager, PRM_DEREGISTER_DYNAMIC_RESOURCE, aClientPtr->iClientId, \ |
270 pDR->iResourceId, printBuf.Ptr(), printBuf.Length()); \ |
305 pDR->iResourceId, printBuf.Ptr(), printBuf.Length()); \ |
271 } |
306 } |
272 |
307 |
273 //Macro to output registration of resource dependency. |
308 //Macro to output registration of resource dependency. |
274 #define PRM_REGISTER_RESOURCE_DEPENDENCY_TRACE \ |
309 #define PRM_REGISTER_RESOURCE_DEPENDENCY_TRACE \ |
275 { \ |
310 { \ |
276 TBuf8<256> printBuf; \ |
311 TBuf8<80> printBuf; \ |
277 printBuf.Zero(); \ |
312 printBuf.Zero(); \ |
278 TraceFormatPrint(printBuf, "%S %S %d %S %d %d", aClientPtr->iName, pR1->iName, pR2->iResourceId, \ |
313 APPEND_VAL(pR2->iResourceId); \ |
279 pR2->iName, pR1, pR2); \ |
314 APPEND_VAL(pR1); \ |
|
315 APPEND_VAL(pR2); \ |
|
316 APPEND_STRING(aClientPtr->iName); \ |
|
317 APPEND_STRING(pR1->iName); \ |
|
318 APPEND_STRING(pR2->iName); \ |
280 BTraceContextN(BTrace::EResourceManager, PRM_REGISTER_RESOURCE_DEPENDENCY, aClientPtr->iClientId, \ |
319 BTraceContextN(BTrace::EResourceManager, PRM_REGISTER_RESOURCE_DEPENDENCY, aClientPtr->iClientId, \ |
281 pR1->iResourceId, printBuf.Ptr(), printBuf.Length()); \ |
320 pR1->iResourceId, printBuf.Ptr(), printBuf.Length()); \ |
282 } |
321 } |
283 |
322 |
284 //Macro to output deregistration of resource dependency. |
323 //Macro to output deregistration of resource dependency. |
285 #define PRM_DEREGISTER_RESOURCE_DEPENDENCY_TRACE \ |
324 #define PRM_DEREGISTER_RESOURCE_DEPENDENCY_TRACE \ |
286 { \ |
325 { \ |
287 TBuf8<256> printBuf; \ |
326 TBuf8<80> printBuf; \ |
288 printBuf.Zero(); \ |
327 printBuf.Zero(); \ |
289 TraceFormatPrint(printBuf, "%S %S %d %S %d %d", aClientPtr->iName, pDR1->iName, pDR2->iResourceId, \ |
328 APPEND_VAL(pDR2->iResourceId); \ |
290 pDR2->iName, pDR1, pDR2); \ |
329 APPEND_VAL(pDR1); \ |
|
330 APPEND_VAL(pDR2); \ |
|
331 APPEND_STRING(aClientPtr->iName); \ |
|
332 APPEND_STRING(pDR1->iName); \ |
|
333 APPEND_STRING(pDR2->iName); \ |
291 BTraceContextN(BTrace::EResourceManager, PRM_DEREGISTER_RESOURCE_DEPENDENCY, aClientPtr->iClientId, \ |
334 BTraceContextN(BTrace::EResourceManager, PRM_DEREGISTER_RESOURCE_DEPENDENCY, aClientPtr->iClientId, \ |
292 pDR1->iResourceId, printBuf.Ptr(), printBuf.Length()); \ |
335 pDR1->iResourceId, printBuf.Ptr(), printBuf.Length()); \ |
293 } |
336 } |
294 #endif |
337 #endif |
295 #else |
338 #else |