S60UIExampleInitialView.inc
上传用户:laixiong
上传日期:2007-03-11
资源大小:2994k
文件大小:1156k
源码类别:

Symbian

开发平台:

C/C++

  1. TLinAddr iLimit;
  2. TLinAddr iExpandLimit;
  3. };
  4. #line 6214
  5. class XLeaveException
  6. {
  7. public:
  8. inline XLeaveException() {}
  9. inline XLeaveException(TInt aReason) {iR = aReason;}
  10. inline TInt Reason() const {return iR;}
  11. __declspec(dllexport) TInt GetReason() const;
  12. private:
  13. #line 6230
  14. private:
  15. TAny* iVtable;
  16. TInt iR;
  17. };
  18. namespace std {
  19.   bool uncaught_exception(void);
  20.   void terminate(void);
  21.   void unexpected(void);
  22.   typedef void (*terminate_handler)();
  23.   terminate_handler set_terminate(terminate_handler h) throw();
  24.   typedef void (*unexpected_handler)();
  25.   unexpected_handler set_unexpected(unexpected_handler h) throw();
  26. }
  27. class __UnknownWindowsType1;
  28. class __UnknownWindowsType2;
  29. class TWin32SEHTrap;
  30. typedef TUint32 (TWin32SEHExceptionHandler)(__UnknownWindowsType1* aExceptionRecord, TWin32SEHTrap* aRegistrationRecord, __UnknownWindowsType2* aContext);
  31. class TWin32SEHTrap
  32. {
  33. private:
  34.     TWin32SEHTrap(TWin32SEHTrap const &);
  35.     TWin32SEHTrap& operator=(TWin32SEHTrap const &);
  36. #line 6297
  37. public:
  38. __declspec(dllexport) TWin32SEHTrap();
  39. public:
  40. __declspec(dllexport) void Trap();
  41. __declspec(dllexport) void UnTrap();
  42. private:
  43. static TUint32 ExceptionHandler(__UnknownWindowsType1* aException, TWin32SEHTrap* aRegistrationRecord, __UnknownWindowsType2* aContext);
  44.     TWin32SEHTrap* iPrevExceptionRegistrationRecord;
  45. TWin32SEHExceptionHandler* iExceptionHandler;
  46. private:
  47. TUint32 iPadding[254];
  48. };
  49. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\e32cmn.inl" /* stack depth 6 */
  50. #line 9
  51. inline TAny* operator new(TUint , TAny* aBase) throw()
  52. {return aBase;}
  53. inline void operator delete(TAny* , TAny* ) throw()
  54. {}
  55. inline TAny* operator new[](TUint , TAny* aBase) throw()
  56. {return aBase;}
  57. inline void operator delete[](TAny* , TAny* ) throw()
  58. {}
  59. inline RAllocator::RAllocator()
  60. {
  61. iAccessCount=1;
  62. iHandleCount=0;
  63. iHandles=0;
  64. iFlags=0;
  65. iCellCount=0;
  66. iTotalAllocSize=0;
  67. }
  68. inline void RAllocator::__DbgMarkCheck(TBool aCountAll, TInt aCount, const TUint8* aFileName, TInt aLineNum)
  69. {__DbgMarkCheck(aCountAll, aCount, TPtrC8(aFileName), aLineNum);}
  70. inline RHeap::RHeap()
  71. {}
  72. inline TInt RHeap::MaxLength() const
  73. {return iMaxLength;}
  74. inline void RHeap::operator delete(TAny*, TAny*)
  75. {}
  76. inline TUint8* RHeap::Base() const
  77. #line 73
  78. {return iBase;}
  79. inline TInt RHeap::Size() const
  80. #line 89
  81. {return iTop-iBase;}
  82. inline TInt RHeap::Align(TInt a) const
  83. {return (((a)+( iAlign)-1)&~(( iAlign)-1)) ;}
  84. inline const TAny* RHeap::Align(const TAny* a) const
  85. {return (const TAny*)((((TLinAddr)a)+( iAlign)-1)&~(( iAlign)-1)) ;}
  86. inline TBool RHeap::IsLastCell(const SCell* aCell) const
  87. {return (((TUint8*)aCell) + aCell->len) == iTop;}
  88. inline void RHeap::Lock() const
  89. {((RFastLock&)iLock).Wait();}
  90. inline void RHeap::Unlock() const
  91. {((RFastLock&)iLock).Signal();}
  92. template <class T>
  93. inline TRefByValue<T>::TRefByValue(T &aRef)
  94. : iRef(aRef)
  95. {}
  96. template <class T>
  97. inline TRefByValue<T>::operator T &()
  98. {return(iRef);}
  99. #line 201
  100. inline TInt RBusLogicalChannel::DoCreate(const TDesC& aDevice, const TVersion& aVer, TInt aUnit, const TDesC* aDriver, const TDesC8* aInfo, TOwnerType aType, TBool aTransferable)
  101. { return DoCreate(aDevice, aVer, aUnit, aDriver, aInfo, (TInt)aType | (aTransferable?KCreateProtectedObject:0) ); }
  102. inline TChar::TChar()
  103. {}
  104. inline TChar::TChar(TUint aChar)
  105. : iChar(aChar)
  106. {}
  107. inline TChar& TChar::operator-=(TUint aChar)
  108. #line 241
  109. {iChar-=aChar;return(*this);}
  110. inline TChar& TChar::operator+=(TUint aChar)
  111. #line 256
  112. {iChar+=aChar;return(*this);}
  113. inline TChar TChar::operator-(TUint aChar)
  114. #line 273
  115. {return(iChar-aChar);}
  116. inline TChar TChar::operator+(TUint aChar)
  117. #line 288
  118. {return(iChar+aChar);}
  119. inline TChar::operator TUint() const
  120. {return(iChar);}
  121. inline TBool TDesC8::operator<(const TDesC8 &aDes) const
  122. #line 320
  123. {return(Compare(aDes)<0);}
  124. inline TBool TDesC8::operator<=(const TDesC8 &aDes) const
  125. #line 339
  126. {return(Compare(aDes)<=0);}
  127. inline TBool TDesC8::operator>(const TDesC8 &aDes) const
  128. #line 358
  129. {return(Compare(aDes)>0);}
  130. inline TBool TDesC8::operator>=(const TDesC8 &aDes) const
  131. #line 377
  132. {return(Compare(aDes)>=0);}
  133. inline TBool TDesC8::operator==(const TDesC8 &aDes) const
  134. #line 396
  135. {return(Compare(aDes)==0);}
  136. inline TBool TDesC8::operator!=(const TDesC8 &aDes) const
  137. #line 415
  138. {return(Compare(aDes)!=0);}
  139. inline const TUint8 &TDesC8::operator[](TInt anIndex) const
  140. #line 433
  141. {return(AtC(anIndex));}
  142. inline TInt TDesC8::Length() const
  143. {return(iLength&KMaskDesLength8);}
  144. inline TInt TDesC8::Size() const
  145. {return(Length());}
  146. inline void TDesC8::DoSetLength(TInt aLength)
  147. {iLength=(iLength&(~KMaskDesLength8))|aLength;}
  148. inline void TPtrC8::Set(const TUint8 *aBuf,TInt aLength)
  149. #line 483
  150. {new(this) TPtrC8(aBuf,aLength);}
  151. inline void TPtrC8::Set(const TDesC8 &aDes)
  152. {new(this) TPtrC8(aDes);}
  153. inline void TPtrC8::Set(const TPtrC8& aPtr)
  154. #line 510
  155. {new(this) TPtrC8(aPtr);}
  156. inline TPtr8 TBufCBase8::DoDes(TInt aMaxLength)
  157. {return TPtr8(*this,aMaxLength);}
  158. template <TInt S>
  159. inline TBufC8<S>::TBufC8()
  160. : TBufCBase8()
  161. #line 540
  162. {}
  163. template <TInt S>
  164. inline TBufC8<S>::TBufC8(const TUint8 *aString)
  165. : TBufCBase8(aString,S)
  166. #line 564
  167. {}
  168. template <TInt S>
  169. inline TBufC8<S>::TBufC8(const TDesC8 &aDes)
  170. : TBufCBase8(aDes,S)
  171. #line 588
  172. {}
  173. template <TInt S>
  174. inline TBufC8<S> &TBufC8<S>::operator=(const TUint8 *aString)
  175. #line 607
  176. {Copy(aString,S);return(*this);}
  177. template <TInt S>
  178. inline TBufC8<S> &TBufC8<S>::operator=(const TDesC8 &aDes)
  179. #line 626
  180. {Copy(aDes,S);return(*this);}
  181. template <TInt S>
  182. inline TPtr8 TBufC8<S>::Des()
  183. #line 656
  184. {return DoDes(S);}
  185. inline HBufC8 &HBufC8::operator=(const HBufC8 &aLcb)
  186. #line 681
  187. {return *this=static_cast<const TDesC8&>(aLcb);}
  188. #line 710
  189. inline void RBuf8::CreateL(RReadStream &aStream,TInt aMaxLength)
  190. {
  191. Assign(HBufC8::NewL(aStream,aMaxLength));
  192. }
  193. inline TDes8 &TDes8::operator=(const TUint8 *aString)
  194. #line 733
  195.     {Copy(aString);return(*this);}
  196. inline TDes8 &TDes8::operator=(const TDesC8 &aDes)
  197. #line 751
  198.     {Copy(aDes);return(*this);}
  199. inline TDes8 &TDes8::operator=(const TDes8 &aDes)
  200. #line 769
  201.     {Copy(aDes);return(*this);}
  202. inline TDes8 &TDes8::operator+=(const TDesC8 &aDes)
  203. #line 788
  204. {Append(aDes);return(*this);}
  205. inline const TUint8 &TDes8::operator[](TInt anIndex) const
  206. #line 806
  207. {return(AtC(anIndex));}
  208. inline TUint8 &TDes8::operator[](TInt anIndex)
  209. #line 825
  210. {return((TUint8 &)AtC(anIndex));}
  211. inline TInt TDes8::MaxLength() const
  212. #line 839
  213. {return(iMaxLength);}
  214. inline TInt TDes8::MaxSize() const
  215. #line 853
  216. {return(iMaxLength);}
  217. inline TUint8 * TDes8::WPtr() const
  218. {return((TUint8 *)Ptr());}
  219. inline TPtr8 &TPtr8::operator=(const TUint8 *aString)
  220. #line 879
  221. {Copy(aString);return(*this);}
  222. inline TPtr8 &TPtr8::operator=(const TDesC8 &aDes)
  223. #line 899
  224. {Copy(aDes);return(*this);}
  225. inline TPtr8 &TPtr8::operator=(const TPtr8 &aDes)
  226. #line 919
  227. {Copy(aDes);return(*this);}
  228. inline void TPtr8::Set(TUint8 *aBuf,TInt aLength,TInt aMaxLength)
  229. #line 940
  230. {new(this) TPtr8(aBuf,aLength,aMaxLength);}
  231. inline void TPtr8::Set(const TPtr8 &aPtr)
  232. #line 955
  233. {new(this) TPtr8(aPtr);}
  234. template <TInt S>
  235. inline TBuf8<S>::TBuf8()
  236. : TBufBase8(S)
  237. #line 972
  238. {}
  239. template <TInt S>
  240. inline TBuf8<S>::TBuf8(TInt aLength)
  241. : TBufBase8(aLength,S)
  242. #line 994
  243. {}
  244. template <TInt S>
  245. inline TBuf8<S>::TBuf8(const TUint8 *aString)
  246. : TBufBase8(aString,S)
  247. #line 1018
  248. {}
  249. template <TInt S>
  250. inline TBuf8<S>::TBuf8(const TDesC8 &aDes)
  251. : TBufBase8(aDes,S)
  252. #line 1042
  253. {}
  254. template <TInt S>
  255. inline TBuf8<S> &TBuf8<S>::operator=(const TUint8 *aString)
  256. #line 1062
  257. {Copy(aString);return(*this);}
  258. template <TInt S>
  259. inline TBuf8<S> &TBuf8<S>::operator=(const TDesC8 &aDes)
  260. #line 1082
  261. {Copy(aDes);return(*this);}
  262. template <TInt S>
  263. inline TBuf8<S>& TBuf8<S>::operator=(const TBuf8<S>& aBuf)
  264. #line 1100
  265. {Copy(aBuf);return *this;}
  266. template <TInt S>
  267. inline TAlignedBuf8<S>::TAlignedBuf8()
  268. : TBufBase8(S)
  269. #line 1117
  270. {}
  271. template <TInt S>
  272. inline TAlignedBuf8<S>::TAlignedBuf8(TInt aLength)
  273. : TBufBase8(aLength,S)
  274. #line 1139
  275. {}
  276. template <TInt S>
  277. inline TAlignedBuf8<S>::TAlignedBuf8(const TUint8 *aString)
  278. : TBufBase8(aString,S)
  279. #line 1163
  280. {}
  281. template <TInt S>
  282. inline TAlignedBuf8<S>::TAlignedBuf8(const TDesC8 &aDes)
  283. : TBufBase8(aDes,S)
  284. #line 1187
  285. {}
  286. template <TInt S>
  287. inline TAlignedBuf8<S> &TAlignedBuf8<S>::operator=(const TUint8 *aString)
  288. #line 1207
  289. {Copy(aString);return(*this);}
  290. template <TInt S>
  291. inline TAlignedBuf8<S> &TAlignedBuf8<S>::operator=(const TDesC8 &aDes)
  292. #line 1227
  293. {Copy(aDes);return(*this);}
  294. template <TInt S>
  295. inline TAlignedBuf8<S>& TAlignedBuf8<S>::operator=(const TAlignedBuf8<S>& aBuf)
  296. #line 1245
  297. {Copy(aBuf);return *this;}
  298. template <TInt S>
  299. inline const TDesC8* TLitC8<S>::operator&() const
  300. {return (reinterpret_cast<const TDesC8*>(this)) ;}
  301. template <TInt S>
  302. inline const TDesC8& TLitC8<S>::operator()() const
  303. {return *operator&();}
  304. template <TInt S>
  305. inline TLitC8<S>::operator const TDesC8&() const
  306. {return *operator&();}
  307. template <TInt S>
  308. inline TLitC8<S>::operator const __TRefDesC8() const
  309. {return *operator&();}
  310. inline TBool TDesC16::operator<(const TDesC16 &aDes) const
  311. #line 1314
  312. {return(Compare(aDes)<0);}
  313. inline TBool TDesC16::operator<=(const TDesC16 &aDes) const
  314. #line 1333
  315. {return(Compare(aDes)<=0);}
  316. inline TBool TDesC16::operator>(const TDesC16 &aDes) const
  317. #line 1352
  318. {return(Compare(aDes)>0);}
  319. inline TBool TDesC16::operator>=(const TDesC16 &aDes) const
  320. #line 1371
  321. {return(Compare(aDes)>=0);}
  322. inline TBool TDesC16::operator==(const TDesC16 &aDes) const
  323. #line 1390
  324. {return(Compare(aDes)==0);}
  325. inline TBool TDesC16::operator!=(const TDesC16 &aDes) const
  326. #line 1409
  327. {return(Compare(aDes)!=0);}
  328. inline const TUint16 &TDesC16::operator[](TInt anIndex) const
  329. #line 1427
  330. {return(AtC(anIndex));}
  331. inline TInt TDesC16::Length() const
  332. {return(iLength&KMaskDesLength16);}
  333. inline TInt TDesC16::Size() const
  334. #line 1454
  335. {return(Length()<<1);}
  336. inline void TDesC16::DoSetLength(TInt aLength)
  337. {iLength=(iLength&(~KMaskDesLength16))|aLength;}
  338. inline void TPtrC16::Set(const TUint16 *aBuf,TInt aLength)
  339. #line 1478
  340. {new(this) TPtrC16(aBuf,aLength);}
  341. inline void TPtrC16::Set(const TDesC16 &aDes)
  342. {new(this) TPtrC16(aDes);}
  343. inline void TPtrC16::Set(const TPtrC16& aPtr)
  344. {new(this) TPtrC16(aPtr);}
  345. inline TPtr16 TBufCBase16::DoDes(TInt aMaxLength)
  346. {return TPtr16(*this,aMaxLength);}
  347. template <TInt S>
  348. inline TBufC16<S>::TBufC16()
  349. : TBufCBase16()
  350. #line 1526
  351. {}
  352. template <TInt S>
  353. inline TBufC16<S>::TBufC16(const TUint16 *aString)
  354. : TBufCBase16(aString,S)
  355. #line 1550
  356. {}
  357. template <TInt S>
  358. inline TBufC16<S>::TBufC16(const TDesC16 &aDes)
  359. : TBufCBase16(aDes,S)
  360. #line 1574
  361. {}
  362. template <TInt S>
  363. inline TBufC16<S> &TBufC16<S>::operator=(const TUint16 *aString)
  364. #line 1593
  365. {Copy(aString,S);return(*this);}
  366. template <TInt S>
  367. inline TBufC16<S> &TBufC16<S>::operator=(const TDesC16 &aDes)
  368. #line 1612
  369. {Copy(aDes,S);return(*this);}
  370. template <TInt S>
  371. inline TPtr16 TBufC16<S>::Des()
  372. #line 1642
  373. {return(DoDes(S));}
  374. inline HBufC16 &HBufC16::operator=(const HBufC16 &aLcb)
  375. #line 1667
  376. {return *this=static_cast<const TDesC16&>(aLcb);}
  377. inline TDes16 &TDes16::operator=(const TUint16 *aString)
  378. #line 1687
  379.     {Copy(aString);return(*this);}
  380. inline TDes16 &TDes16::operator=(const TDesC16 &aDes)
  381. #line 1705
  382.     {Copy(aDes);return(*this);}
  383. inline TDes16 &TDes16::operator=(const TDes16 &aDes)
  384. #line 1723
  385.     {Copy(aDes);return(*this);}
  386. inline TDes16 &TDes16::operator+=(const TDesC16 &aDes)
  387. #line 1742
  388. {Append(aDes);return(*this);}
  389. inline const TUint16 &TDes16::operator[](TInt anIndex) const
  390. #line 1759
  391. {return(AtC(anIndex));}
  392. inline TUint16 &TDes16::operator[](TInt anIndex)
  393. #line 1778
  394. {return((TUint16 &)AtC(anIndex));}
  395. inline TInt TDes16::MaxLength() const
  396. #line 1792
  397. {return(iMaxLength);}
  398. inline TInt TDes16::MaxSize() const
  399. #line 1806
  400. {return(iMaxLength<<1);}
  401. inline TUint16 * TDes16::WPtr() const
  402. {return((TUint16 *)Ptr());}
  403. inline TPtr16 &TPtr16::operator=(const TUint16 *aString)
  404. #line 1832
  405. {Copy(aString);return(*this);}
  406. inline TPtr16 &TPtr16::operator=(const TDesC16 &aDes)
  407. #line 1852
  408. {Copy(aDes);return(*this);}
  409. inline TPtr16 &TPtr16::operator=(const TPtr16 &aDes)
  410. #line 1872
  411. {Copy(aDes);return(*this);}
  412. inline void TPtr16::Set(TUint16 *aBuf,TInt aLength,TInt aMaxLength)
  413. #line 1893
  414. {new(this) TPtr16(aBuf,aLength,aMaxLength);}
  415. inline void TPtr16::Set(const TPtr16 &aPtr)
  416. #line 1908
  417. {new(this) TPtr16(aPtr);}
  418. template <TInt S>
  419. inline TBuf16<S>::TBuf16()
  420. : TBufBase16(S)
  421. #line 1925
  422. {}
  423. template <TInt S>
  424. inline TBuf16<S>::TBuf16(TInt aLength)
  425. : TBufBase16(aLength,S)
  426. #line 1947
  427. {}
  428. template <TInt S>
  429. inline TBuf16<S>::TBuf16(const TUint16 *aString)
  430. : TBufBase16(aString,S)
  431. #line 1971
  432. {}
  433. template <TInt S>
  434. inline TBuf16<S>::TBuf16(const TDesC16 &aDes)
  435. : TBufBase16(aDes,S)
  436. #line 1995
  437. {}
  438. template <TInt S>
  439. inline TBuf16<S> &TBuf16<S>::operator=(const TUint16 *aString)
  440. #line 2015
  441. {Copy(aString);return(*this);}
  442. template <TInt S>
  443. inline TBuf16<S> &TBuf16<S>::operator=(const TDesC16 &aDes)
  444. #line 2035
  445. {Copy(aDes);return(*this);}
  446. template <TInt S>
  447. inline TBuf16<S>& TBuf16<S>::operator=(const TBuf16<S>& aBuf)
  448. #line 2056
  449. {Copy(aBuf);return *this;}
  450. #line 2083
  451. inline void RBuf16::CreateL(RReadStream &aStream,TInt aMaxLength)
  452. {
  453. Assign(HBufC16::NewL(aStream,aMaxLength));
  454. }
  455. template <TInt S>
  456. inline const TDesC16* TLitC16<S>::operator&() const
  457. {return (reinterpret_cast<const TDesC16*>(this)) ;}
  458. template <TInt S>
  459. inline const TDesC16& TLitC16<S>::operator()() const
  460. {return *operator&();}
  461. template <TInt S>
  462. inline TLitC16<S>::operator const TDesC16&() const
  463. {return *operator&();}
  464. template <TInt S>
  465. inline TLitC16<S>::operator const __TRefDesC16() const
  466. {return *operator&();}
  467. template <TInt S>
  468. inline TBufC<S>::TBufC()
  469. : TBufCBase16()
  470. #line 2157
  471. {}
  472. template <TInt S>
  473. inline TBufC<S>::TBufC(const TText *aString)
  474. : TBufCBase16(aString,S)
  475. #line 2186
  476. {}
  477. template <TInt S>
  478. inline TBufC<S>::TBufC(const TDesC &aDes)
  479. : TBufCBase16(aDes,S)
  480. #line 2219
  481. {}
  482. #line 2234
  483. template <TInt S>
  484. inline TBufC<S> &TBufC<S>::operator=(const TText *aString)
  485. #line 2253
  486. {Copy(aString,S);return(*this);}
  487. template <TInt S>
  488. inline TBufC<S> &TBufC<S>::operator=(const TDesC &aDes)
  489. #line 2277
  490. {Copy(aDes,S);return(*this);}
  491. template <TInt S>
  492. inline TPtr TBufC<S>::Des()
  493. #line 2308
  494. {return(DoDes(S));}
  495. template <TInt S>
  496. inline TBuf<S>::TBuf()
  497. : TBufBase16(S)
  498. {}
  499. template <TInt S>
  500. inline TBuf<S>::TBuf(TInt aLength)
  501. : TBufBase16(aLength,S)
  502. #line 2350
  503. {}
  504. template <TInt S>
  505. inline TBuf<S>::TBuf(const TText *aString)
  506. : TBufBase16(aString,S)
  507. #line 2378
  508. {}
  509. template <TInt S>
  510. inline TBuf<S>::TBuf(const TDesC &aDes)
  511. : TBufBase16(aDes,S)
  512. #line 2407
  513. {}
  514. #line 2426
  515. template <TInt S>
  516. inline TBuf<S> &TBuf<S>::operator=(const TText *aString)
  517. {Copy(aString);return(*this);}
  518. template <TInt S>
  519. inline TBuf<S> &TBuf<S>::operator=(const TDesC &aDes)
  520. {Copy(aDes);return(*this);}
  521. template <TInt S>
  522. inline TBuf<S> &TBuf<S>::operator=(const TBuf<S> &aBuf)
  523. {Copy(aBuf);return(*this);}
  524. template <TInt S>
  525. inline const TDesC* TLitC<S>::operator&() const
  526. {return (reinterpret_cast<const TDesC*>(this)) ;}
  527. template <TInt S>
  528. inline const TDesC& TLitC<S>::operator()() const
  529. {return *operator&();}
  530. template <TInt S>
  531. inline TLitC<S>::operator const TDesC&() const
  532. {return *operator&();}
  533. template <TInt S>
  534. inline TLitC<S>::operator const __TRefDesC() const
  535. {return *operator&();}
  536. template <class T>
  537. inline TPckgC<T>::TPckgC(const T &aRef)
  538. : TPtrC8((const TUint8 *)&aRef,sizeof(T))
  539. {}
  540. template <class T>
  541. inline const T &TPckgC<T>::operator()() const
  542. {return(*((const T *)iPtr));}
  543. template <class T>
  544. inline TPckg<T>::TPckg(const T &aRef)
  545. : TPtr8((TUint8 *)&aRef,sizeof(T),sizeof(T))
  546. {}
  547. template <class T>
  548. inline T &TPckg<T>::operator()()
  549. {return(*((T *)iPtr));}
  550. template <class T>
  551. inline TPckgBuf<T>::TPckgBuf()
  552. : TAlignedBuf8<sizeof(T)>(sizeof(T))
  553. {new(&this->iBuf[0]) T;}
  554. template <class T>
  555. inline TPckgBuf<T>::TPckgBuf(const T &aRef)
  556. : TAlignedBuf8<sizeof(T)>(sizeof(T))
  557. #line 2576
  558. {new(&this->iBuf[0]) T(aRef);}
  559. template <class T>
  560. inline TPckgBuf<T> &TPckgBuf<T>::operator=(const TPckgBuf<T> &aRef)
  561. {this->Copy(aRef);return(*this);}
  562. template <class T>
  563. inline T &TPckgBuf<T>::operator=(const T &aRef)
  564. #line 2605
  565. {this->Copy((TUint8 *)&aRef,sizeof(T));return(*((T *)&this->iBuf[0]));}
  566. template <class T>
  567. inline T &TPckgBuf<T>::operator()()
  568. {return(*((T *)&this->iBuf[0]));}
  569. template <class T>
  570. inline const T &TPckgBuf<T>::operator()() const
  571. {return(*((T *)&this->iBuf[0]));}
  572. inline TRequestStatus::TRequestStatus()
  573. : iFlags(0)
  574. {}
  575. inline TRequestStatus::TRequestStatus(TInt aVal)
  576. : iStatus(aVal),
  577. iFlags(aVal==KRequestPending ? TRequestStatus::ERequestPending : 0)
  578. {}
  579. inline TInt TRequestStatus::operator=(TInt aVal)
  580. {
  581. if(aVal==KRequestPending)
  582. iFlags|=TRequestStatus::ERequestPending;
  583. else
  584. iFlags&=~TRequestStatus::ERequestPending;
  585. return (iStatus=aVal);
  586. }
  587. inline TBool TRequestStatus::operator==(TInt aVal) const
  588. #line 2691
  589. {return(iStatus==aVal);}
  590. inline TBool TRequestStatus::operator!=(TInt aVal) const
  591. #line 2705
  592. {return(iStatus!=aVal);}
  593. inline TBool TRequestStatus::operator>=(TInt aVal) const
  594. #line 2720
  595. {return(iStatus>=aVal);}
  596. inline TBool TRequestStatus::operator<=(TInt aVal) const
  597. #line 2735
  598. {return(iStatus<=aVal);}
  599. inline TBool TRequestStatus::operator>(TInt aVal) const
  600. #line 2750
  601. {return(iStatus>aVal);}
  602. inline TBool TRequestStatus::operator<(TInt aVal) const
  603. #line 2765
  604. {return(iStatus<aVal);}
  605. inline TInt TRequestStatus::Int() const
  606. {return(iStatus);}
  607. inline TPoint::TPoint()
  608. : iX(0),iY(0)
  609. {}
  610. inline TPoint::TPoint(TInt aX,TInt aY)
  611. : iX(aX),iY(aY)
  612. {}
  613. inline TSize::TSize()
  614. : iWidth(0),iHeight(0)
  615. {}
  616. inline TSize::TSize(TInt aWidth,TInt aHeight)
  617. : iWidth(aWidth),iHeight(aHeight)
  618. {}
  619. inline RHandleBase::RHandleBase()
  620. : iHandle(0)
  621. {}
  622. inline RHandleBase::RHandleBase(TInt aHandle)
  623. : iHandle(aHandle)
  624. #line 2853
  625. {}
  626. inline void RHandleBase::SetHandle(TInt aHandle)
  627. { iHandle=aHandle; }
  628. inline TInt RHandleBase::Handle() const
  629. {return(iHandle);}
  630. inline TInt RHandleBase::SetReturnedHandle(TInt aHandleOrError)
  631. #line 2899
  632. {
  633. if(aHandleOrError>=0)
  634. {
  635. iHandle = aHandleOrError;
  636. return KErrNone;
  637. }
  638. iHandle = 0;
  639. return aHandleOrError;
  640. }
  641. inline TInt RSemaphore::Open(const TFindSemaphore& aFind,TOwnerType aType)
  642. #line 2935
  643. {return(RHandleBase::Open((const TFindHandleBase&)aFind,aType));}
  644. #line 2947
  645. inline RFastLock::RFastLock()
  646. : iCount(0)
  647. {}
  648. #line 2960
  649. inline RMessagePtr2::RMessagePtr2()
  650. : iHandle(0)
  651. {}
  652. #line 2972
  653. inline TBool RMessagePtr2::IsNull() const
  654. {return iHandle==0;}
  655. #line 2983
  656. inline TInt RMessagePtr2::Handle() const
  657. {return iHandle;}
  658. inline TBool operator==(RMessagePtr2 aLeft,RMessagePtr2 aRight)
  659. {return aLeft.Handle()==aRight.Handle();}
  660. inline TBool operator!=(RMessagePtr2 aLeft,RMessagePtr2 aRight)
  661. {return aLeft.Handle()!=aRight.Handle();}
  662. #line 3000
  663. inline RMessage2::RMessage2()
  664. {}
  665. #line 3011
  666. inline TInt RMessage2::Function() const
  667. {return(iFunction);}
  668. #line 3022
  669. inline TInt RMessage2::Int0() const
  670. {return(iArgs[0]);}
  671. #line 3033
  672. inline TInt RMessage2::Int1() const
  673. {return(iArgs[1]);}
  674. #line 3044
  675. inline TInt RMessage2::Int2() const
  676. {return(iArgs[2]);}
  677. #line 3054
  678. inline TInt RMessage2::Int3() const
  679. {return(iArgs[3]);}
  680. #line 3064
  681. inline const TAny *RMessage2::Ptr0() const
  682. {return((const TAny *)iArgs[0]);}
  683. #line 3075
  684. inline const TAny *RMessage2::Ptr1() const
  685. {return((const TAny *)iArgs[1]);}
  686. #line 3086
  687. inline const TAny *RMessage2::Ptr2() const
  688. {return((const TAny *)iArgs[2]);}
  689. #line 3097
  690. inline const TAny *RMessage2::Ptr3() const
  691. {return((const TAny *)iArgs[3]);}
  692. #line 3107
  693. inline CSession2* RMessage2::Session() const
  694. {return (CSession2*)iSessionPtr; }
  695. inline TUid TUid::Uid(TInt aUid)
  696. #line 3123
  697. {TUid uid={aUid};return uid;}
  698. inline TUid TUid::Null()
  699. {TUid uid={KNullUidValue};return uid;}
  700. template <class T>
  701. inline TArray<T>::TArray(TInt (*aCount)(const CBase *aPtr),const TAny *(*anAt)(const CBase *aPtr,TInt anIndex),const CBase *aPtr)
  702. : iPtr(aPtr),iCount(aCount),iAt(anAt)
  703. #line 3195
  704. {}
  705. template <class T>
  706. inline TInt TArray<T>::Count() const
  707. {return((*iCount)(iPtr));}
  708. template <class T>
  709. inline const T &TArray<T>::operator[](TInt anIndex) const
  710. #line 3232
  711. {return(*((const T *)(*iAt)(iPtr,anIndex)));}
  712. template <class T>
  713. inline TIdentityRelation<T>::TIdentityRelation( TBool (*anIdentity)(const T&, const T&) )
  714. #line 3254
  715. { iIdentity=(TGeneralIdentityRelation)anIdentity; }
  716. template <class T>
  717. inline TIdentityRelation<T>::operator TGeneralIdentityRelation() const
  718. { return iIdentity; }
  719. template <class T>
  720. inline TLinearOrder<T>::TLinearOrder( TInt(*anOrder)(const T&, const T&) )
  721. #line 3288
  722. { iOrder=(TGeneralLinearOrder)anOrder; }
  723. template <class T>
  724. inline TLinearOrder<T>::operator TGeneralLinearOrder() const
  725. { return iOrder; }
  726. #line 3312
  727. template <class T>
  728. inline RPointerArray<T>::RPointerArray()
  729. : RPointerArrayBase()
  730. {}
  731. #line 3331
  732. template <class T>
  733. inline RPointerArray<T>::RPointerArray(TInt aGranularity)
  734. : RPointerArrayBase(aGranularity)
  735. {}
  736. #line 3354
  737. template <class T>
  738. inline RPointerArray<T>::RPointerArray(TInt aMinGrowBy, TInt aFactor)
  739. : RPointerArrayBase(aMinGrowBy, aFactor)
  740. {}
  741. template <class T>
  742. inline void RPointerArray<T>::Close()
  743. #line 3372
  744. {RPointerArrayBase::Close();}
  745. template <class T>
  746. inline TInt RPointerArray<T>::Count() const
  747. { return RPointerArrayBase::Count(); }
  748. template <class T>
  749. inline T* const& RPointerArray<T>::operator[](TInt anIndex) const
  750. #line 3408
  751. {return (T* const&)At(anIndex);}
  752. template <class T>
  753. inline T*& RPointerArray<T>::operator[](TInt anIndex)
  754. #line 3432
  755. {return (T*&)At(anIndex);}
  756. template <class T>
  757. inline TInt RPointerArray<T>::Append(const T* anEntry)
  758. #line 3447
  759. { return RPointerArrayBase::Append(anEntry); }
  760. template <class T>
  761. inline TInt RPointerArray<T>::Insert(const T* anEntry, TInt aPos)
  762. #line 3468
  763. { return RPointerArrayBase::Insert(anEntry,aPos); }
  764. template <class T>
  765. inline void RPointerArray<T>::Remove(TInt anIndex)
  766. #line 3488
  767. {RPointerArrayBase::Remove(anIndex);}
  768. template <class T>
  769. inline void RPointerArray<T>::Compress()
  770. #line 3503
  771. {RPointerArrayBase::Compress();}
  772. template <class T>
  773. inline void RPointerArray<T>::Reset()
  774. #line 3522
  775. {RPointerArrayBase::Reset();}
  776. template <class T>
  777. inline TInt RPointerArray<T>::Find(const T* anEntry) const
  778. #line 3542
  779. { return RPointerArrayBase::Find(anEntry); }
  780. template <class T>
  781. inline TInt RPointerArray<T>::Find(const T* anEntry, TIdentityRelation<T> anIdentity) const
  782. #line 3566
  783. { return RPointerArrayBase::Find(anEntry,anIdentity); }
  784. template <class T>
  785. inline TInt RPointerArray<T>::FindInAddressOrder(const T* anEntry) const
  786. #line 3584
  787. { return RPointerArrayBase::FindIsqUnsigned((TUint)anEntry); }
  788. template <class T>
  789. inline TInt RPointerArray<T>::FindInOrder(const T* anEntry, TLinearOrder<T> anOrder) const
  790. #line 3606
  791. { return RPointerArrayBase::FindIsq(anEntry,anOrder); }
  792. template <class T>
  793. inline TInt RPointerArray<T>::FindInAddressOrder(const T* anEntry, TInt& anIndex) const
  794. #line 3631
  795. { return RPointerArrayBase::BinarySearchUnsigned((TUint)anEntry,anIndex); }
  796. template <class T>
  797. inline TInt RPointerArray<T>::FindInOrder(const T* anEntry, TInt& anIndex, TLinearOrder<T> anOrder) const
  798. #line 3660
  799. { return RPointerArrayBase::BinarySearch(anEntry,anIndex,anOrder); }
  800. template <class T>
  801. inline TInt RPointerArray<T>::SpecificFindInAddressOrder(const T* anEntry, TInt aMode) const
  802. #line 3691
  803. { return RPointerArrayBase::FindIsqUnsigned((TUint)anEntry, aMode); }
  804. template <class T>
  805. inline TInt RPointerArray<T>::SpecificFindInOrder(const T* anEntry, TLinearOrder<T> anOrder, TInt aMode) const
  806. #line 3726
  807. { return RPointerArrayBase::FindIsq(anEntry,anOrder,aMode); }
  808. template <class T>
  809. inline TInt RPointerArray<T>::SpecificFindInAddressOrder(const T* anEntry, TInt& anIndex, TInt aMode) const
  810. #line 3766
  811. { return RPointerArrayBase::BinarySearchUnsigned((TUint)anEntry,anIndex,aMode); }
  812. template <class T>
  813. inline TInt RPointerArray<T>::SpecificFindInOrder(const T* anEntry, TInt& anIndex, TLinearOrder<T> anOrder, TInt aMode) const
  814. #line 3810
  815. { return RPointerArrayBase::BinarySearch(anEntry,anIndex,anOrder,aMode); }
  816. template <class T>
  817. inline TInt RPointerArray<T>::InsertInAddressOrder(const T* anEntry)
  818. #line 3833
  819. { return RPointerArrayBase::InsertIsqUnsigned((TUint)anEntry,EFalse); }
  820. template <class T>
  821. inline TInt RPointerArray<T>::InsertInOrder(const T* anEntry, TLinearOrder<T> anOrder)
  822. #line 3862
  823. { return RPointerArrayBase::InsertIsq(anEntry,anOrder,EFalse); }
  824. template <class T>
  825. inline TInt RPointerArray<T>::InsertInAddressOrderAllowRepeats(const T* anEntry)
  826. #line 3885
  827. { return RPointerArrayBase::InsertIsqUnsigned((TUint)anEntry,ETrue); }
  828. template <class T>
  829. inline TInt RPointerArray<T>::InsertInOrderAllowRepeats(const T* anEntry, TLinearOrder<T> anOrder)
  830. #line 3911
  831. { return RPointerArrayBase::InsertIsq(anEntry,anOrder,ETrue); }
  832. template <class T>
  833. inline RPointerArray<T>::RPointerArray(T** aEntries, TInt aCount)
  834. : RPointerArrayBase((TAny **)aEntries, aCount)
  835. #line 3935
  836. {}
  837. template <class T>
  838. inline void RPointerArray<T>::GranularCompress()
  839. #line 3950
  840. {RPointerArrayBase::GranularCompress();}
  841. template <class T>
  842. inline TInt RPointerArray<T>::Reserve(TInt aCount)
  843. #line 3969
  844. { return RPointerArrayBase::DoReserve(aCount); }
  845. template <class T>
  846. inline void RPointerArray<T>::SortIntoAddressOrder()
  847. { HeapSortUnsigned(); }
  848. template <class T>
  849. inline void RPointerArray<T>::Sort(TLinearOrder<T> anOrder)
  850. #line 3996
  851. { HeapSort(anOrder); }
  852. template <class T>
  853. inline TArray<T*> RPointerArray<T>::Array() const
  854. { return TArray<T*>(GetCount,GetElementPtr,(const CBase*)this); }
  855. template <class T>
  856. void RPointerArray<T>::ResetAndDestroy()
  857. #line 4026
  858. {
  859. TInt c=Count();
  860. T** pE=(T**)Entries();
  861. ZeroCount();
  862. TInt i;
  863. for (i=0; i<c; i++)
  864. {
  865. delete *pE;
  866. pE++;
  867. }
  868. Reset();
  869. }
  870. #line 4049
  871. inline RPointerArray<TAny>::RPointerArray()
  872. : RPointerArrayBase()
  873. {}
  874. #line 4067
  875. inline RPointerArray<TAny>::RPointerArray(TInt aGranularity)
  876. : RPointerArrayBase(aGranularity)
  877. {}
  878. #line 4089
  879. inline RPointerArray<TAny>::RPointerArray(TInt aMinGrowBy, TInt aFactor)
  880. : RPointerArrayBase(aMinGrowBy, aFactor)
  881. {}
  882. inline void RPointerArray<TAny>::Close()
  883. #line 4105
  884. {RPointerArrayBase::Close();}
  885. inline TInt RPointerArray<TAny>::Count() const
  886. { return RPointerArrayBase::Count(); }
  887. inline TAny* const& RPointerArray<TAny>::operator[](TInt anIndex) const
  888. #line 4139
  889. {return At(anIndex);}
  890. inline TAny*& RPointerArray<TAny>::operator[](TInt anIndex)
  891. #line 4162
  892. {return At(anIndex);}
  893. inline TInt RPointerArray<TAny>::Append(const TAny* anEntry)
  894. #line 4176
  895. { return RPointerArrayBase::Append(anEntry); }
  896. inline TInt RPointerArray<TAny>::Insert(const TAny* anEntry, TInt aPos)
  897. #line 4196
  898. { return RPointerArrayBase::Insert(anEntry,aPos); }
  899. inline void RPointerArray<TAny>::Remove(TInt anIndex)
  900. #line 4215
  901. {RPointerArrayBase::Remove(anIndex);}
  902. inline void RPointerArray<TAny>::Compress()
  903. #line 4229
  904. {RPointerArrayBase::Compress();}
  905. inline void RPointerArray<TAny>::Reset()
  906. #line 4247
  907. {RPointerArrayBase::Reset();}
  908. inline TInt RPointerArray<TAny>::Find(const TAny* anEntry) const
  909. #line 4266
  910. { return RPointerArrayBase::Find(anEntry); }
  911. inline TInt RPointerArray<TAny>::FindInAddressOrder(const TAny* anEntry) const
  912. #line 4283
  913. { return RPointerArrayBase::FindIsqUnsigned((TUint)anEntry); }
  914. inline TInt RPointerArray<TAny>::FindInAddressOrder(const TAny* anEntry, TInt& anIndex) const
  915. #line 4307
  916. { return RPointerArrayBase::BinarySearchUnsigned((TUint)anEntry,anIndex); }
  917. inline TInt RPointerArray<TAny>::SpecificFindInAddressOrder(const TAny* anEntry, TInt aMode) const
  918. #line 4337
  919. { return RPointerArrayBase::FindIsqUnsigned((TUint)anEntry, aMode); }
  920. inline TInt RPointerArray<TAny>::SpecificFindInAddressOrder(const TAny* anEntry, TInt& anIndex, TInt aMode) const
  921. #line 4376
  922. { return RPointerArrayBase::BinarySearchUnsigned((TUint)anEntry,anIndex,aMode); }
  923. inline TInt RPointerArray<TAny>::InsertInAddressOrder(const TAny* anEntry)
  924. #line 4398
  925. { return RPointerArrayBase::InsertIsqUnsigned((TUint)anEntry,EFalse); }
  926. inline TInt RPointerArray<TAny>::InsertInAddressOrderAllowRepeats(const TAny* anEntry)
  927. #line 4420
  928. { return RPointerArrayBase::InsertIsqUnsigned((TUint)anEntry,ETrue); }
  929. inline RPointerArray<TAny>::RPointerArray(TAny** aEntries, TInt aCount)
  930. : RPointerArrayBase((TAny **)aEntries, aCount)
  931. #line 4443
  932. {}
  933. inline void RPointerArray<TAny>::GranularCompress()
  934. #line 4457
  935. {RPointerArrayBase::GranularCompress();}
  936. inline void RPointerArray<TAny>::SortIntoAddressOrder()
  937. { HeapSortUnsigned(); }
  938. inline TArray<TAny*> RPointerArray<TAny>::Array() const
  939. { return TArray<TAny*>(GetCount,GetElementPtr,(const CBase*)this); }
  940. template <class T>
  941. inline RArray<T>::RArray()
  942. : RArrayBase(sizeof(T))
  943. #line 4497
  944. {}
  945. template <class T>
  946. inline RArray<T>::RArray(TInt aGranularity)
  947. : RArrayBase(sizeof(T),aGranularity)
  948. #line 4519
  949. {}
  950. template <class T>
  951. inline RArray<T>::RArray(TInt aGranularity, TInt aKeyOffset)
  952. : RArrayBase(sizeof(T),aGranularity,aKeyOffset)
  953. #line 4543
  954. {}
  955. #line 4567
  956. template <class T>
  957. inline RArray<T>::RArray(TInt aMinGrowBy, TInt aKeyOffset, TInt aFactor)
  958. : RArrayBase(sizeof(T), aMinGrowBy, aKeyOffset, aFactor)
  959. {}
  960. template <class T>
  961. inline void RArray<T>::Close()
  962. {RArrayBase::Close();}
  963. template <class T>
  964. inline TInt RArray<T>::Count() const
  965. {return RArrayBase::Count();}
  966. template <class T>
  967. inline const T& RArray<T>::operator[](TInt anIndex) const
  968. #line 4616
  969. {return *(const T*)At(anIndex); }
  970. template <class T>
  971. inline T& RArray<T>::operator[](TInt anIndex)
  972. #line 4638
  973. {return *(T*)At(anIndex); }
  974. template <class T>
  975. inline TInt RArray<T>::Append(const T& anEntry)
  976. #line 4653
  977. {return RArrayBase::Append(&anEntry);}
  978. template <class T>
  979. inline TInt RArray<T>::Insert(const T& anEntry, TInt aPos)
  980. #line 4675
  981. {return RArrayBase::Insert(&anEntry,aPos);}
  982. template <class T>
  983. inline void RArray<T>::Remove(TInt anIndex)
  984. #line 4692
  985. {RArrayBase::Remove(anIndex);}
  986. template <class T>
  987. inline void RArray<T>::Compress()
  988. {RArrayBase::Compress();}
  989. template <class T>
  990. inline void RArray<T>::Reset()
  991. #line 4721
  992. {RArrayBase::Reset();}
  993. template <class T>
  994. inline TInt RArray<T>::Find(const T& anEntry) const
  995. #line 4743
  996. {return RArrayBase::Find(&anEntry);}
  997. template <class T>
  998. inline TInt RArray<T>::Find(const T& anEntry, TIdentityRelation<T> anIdentity) const
  999. #line 4768
  1000. {return RArrayBase::Find(&anEntry,anIdentity);}
  1001. template <class T>
  1002. inline TInt RArray<T>::FindInSignedKeyOrder(const T& anEntry) const
  1003. #line 4787
  1004. {return RArrayBase::FindIsqSigned(&anEntry);}
  1005. template <class T>
  1006. inline TInt RArray<T>::FindInUnsignedKeyOrder(const T& anEntry) const
  1007. #line 4806
  1008. {return RArrayBase::FindIsqUnsigned(&anEntry);}
  1009. template <class T>
  1010. inline TInt RArray<T>::FindInOrder(const T& anEntry, TLinearOrder<T> anOrder) const
  1011. #line 4828
  1012. {return RArrayBase::FindIsq(&anEntry,anOrder);}
  1013. template <class T>
  1014. inline TInt RArray<T>::FindInSignedKeyOrder(const T& anEntry, TInt& anIndex) const
  1015. #line 4851
  1016. {return RArrayBase::BinarySearchSigned(&anEntry,anIndex);}
  1017. template <class T>
  1018. inline TInt RArray<T>::FindInUnsignedKeyOrder(const T& anEntry, TInt& anIndex) const
  1019. #line 4875
  1020. {return RArrayBase::BinarySearchUnsigned(&anEntry,anIndex);}
  1021. template <class T>
  1022. inline TInt RArray<T>::FindInOrder(const T& anEntry, TInt& anIndex, TLinearOrder<T> anOrder) const
  1023. #line 4902
  1024. {return RArrayBase::BinarySearch(&anEntry,anIndex,anOrder);}
  1025. template <class T>
  1026. inline TInt RArray<T>::SpecificFindInSignedKeyOrder(const T& anEntry, TInt aMode) const
  1027. #line 4936
  1028. {return RArrayBase::FindIsqSigned(&anEntry,aMode);}
  1029. template <class T>
  1030. inline TInt RArray<T>::SpecificFindInUnsignedKeyOrder(const T& anEntry, TInt aMode) const
  1031. #line 4970
  1032. {return RArrayBase::FindIsqUnsigned(&anEntry,aMode);}
  1033. template <class T>
  1034. inline TInt RArray<T>::SpecificFindInOrder(const T& anEntry, TLinearOrder<T> anOrder, TInt aMode) const
  1035. #line 5003
  1036. {return RArrayBase::FindIsq(&anEntry,anOrder,aMode);}
  1037. template <class T>
  1038. inline TInt RArray<T>::SpecificFindInSignedKeyOrder(const T& anEntry, TInt& anIndex, TInt aMode) const
  1039. #line 5042
  1040. {return RArrayBase::BinarySearchSigned(&anEntry,anIndex,aMode);}
  1041. template <class T>
  1042. inline TInt RArray<T>::SpecificFindInUnsignedKeyOrder(const T& anEntry, TInt& anIndex, TInt aMode) const
  1043. #line 5081
  1044. {return RArrayBase::BinarySearchUnsigned(&anEntry,anIndex,aMode);}
  1045. template <class T>
  1046. inline TInt RArray<T>::SpecificFindInOrder(const T& anEntry, TInt& anIndex, TLinearOrder<T> anOrder, TInt aMode) const
  1047. #line 5123
  1048. {return RArrayBase::BinarySearch(&anEntry,anIndex,anOrder,aMode);}
  1049. template <class T>
  1050. inline TInt RArray<T>::InsertInSignedKeyOrder(const T& anEntry)
  1051. #line 5146
  1052. {return RArrayBase::InsertIsqSigned(&anEntry,EFalse);}
  1053. template <class T>
  1054. inline TInt RArray<T>::InsertInUnsignedKeyOrder(const T& anEntry)
  1055. #line 5169
  1056. {return RArrayBase::InsertIsqUnsigned(&anEntry,EFalse);}
  1057. template <class T>
  1058. inline TInt RArray<T>::InsertInOrder(const T& anEntry, TLinearOrder<T> anOrder)
  1059. #line 5197
  1060. {return RArrayBase::InsertIsq(&anEntry,anOrder,EFalse);}
  1061. template <class T>
  1062. inline TInt RArray<T>::InsertInSignedKeyOrderAllowRepeats(const T& anEntry)
  1063. #line 5221
  1064. {return RArrayBase::InsertIsqSigned(&anEntry,ETrue);}
  1065. template <class T>
  1066. inline TInt RArray<T>::InsertInUnsignedKeyOrderAllowRepeats(const T& anEntry)
  1067. #line 5245
  1068. {return RArrayBase::InsertIsqUnsigned(&anEntry,ETrue);}
  1069. template <class T>
  1070. inline TInt RArray<T>::InsertInOrderAllowRepeats(const T& anEntry, TLinearOrder<T> anOrder)
  1071. #line 5272
  1072. {return RArrayBase::InsertIsq(&anEntry,anOrder,ETrue);}
  1073. template <class T>
  1074. inline RArray<T>::RArray(TInt aEntrySize,T* aEntries, TInt aCount)
  1075. : RArrayBase(aEntrySize,aEntries,aCount)
  1076. #line 5303
  1077. {}
  1078. template <class T>
  1079. inline void RArray<T>::GranularCompress()
  1080. #line 5318
  1081. {RArrayBase::GranularCompress();}
  1082. template <class T>
  1083. inline TInt RArray<T>::Reserve(TInt aCount)
  1084. #line 5337
  1085. { return RArrayBase::DoReserve(aCount); }
  1086. template <class T>
  1087. inline void RArray<T>::SortSigned()
  1088. {HeapSortSigned();}
  1089. template <class T>
  1090. inline void RArray<T>::SortUnsigned()
  1091. {HeapSortUnsigned();}
  1092. template <class T>
  1093. inline void RArray<T>::Sort(TLinearOrder<T> anOrder)
  1094. #line 5375
  1095. {HeapSort(anOrder);}
  1096. template <class T>
  1097. inline TArray<T> RArray<T>::Array() const
  1098. { return TArray<T>(GetCount,GetElementPtr,(const CBase*)this); }
  1099. inline RArray<TInt>::RArray()
  1100. : RPointerArrayBase()
  1101. {}
  1102. inline RArray<TInt>::RArray(TInt aGranularity)
  1103. : RPointerArrayBase(aGranularity)
  1104. #line 5417
  1105. {}
  1106. #line 5437
  1107. inline RArray<TInt>::RArray(TInt aMinGrowBy, TInt aFactor)
  1108. : RPointerArrayBase(aMinGrowBy, aFactor)
  1109. {}
  1110. inline void RArray<TInt>::Close()
  1111. {RPointerArrayBase::Close();}
  1112. inline TInt RArray<TInt>::Count() const
  1113. { return RPointerArrayBase::Count(); }
  1114. inline const TInt& RArray<TInt>::operator[](TInt anIndex) const
  1115. #line 5484
  1116. {return (const TInt&)At(anIndex);}
  1117. inline TInt& RArray<TInt>::operator[](TInt anIndex)
  1118. #line 5507
  1119. {return (TInt&)At(anIndex);}
  1120. inline TInt RArray<TInt>::Append(TInt anEntry)
  1121. #line 5521
  1122. { return RPointerArrayBase::Append((const TAny*)anEntry); }
  1123. inline TInt RArray<TInt>::Insert(TInt anEntry, TInt aPos)
  1124. #line 5541
  1125. { return RPointerArrayBase::Insert((const TAny*)anEntry,aPos); }
  1126. inline void RArray<TInt>::Remove(TInt anIndex)
  1127. #line 5558
  1128. {RPointerArrayBase::Remove(anIndex);}
  1129. inline void RArray<TInt>::Compress()
  1130. {RPointerArrayBase::Compress();}
  1131. inline void RArray<TInt>::Reset()
  1132. #line 5586
  1133. {RPointerArrayBase::Reset();}
  1134. inline TInt RArray<TInt>::Find(TInt anEntry) const
  1135. #line 5604
  1136. { return RPointerArrayBase::Find((const TAny*)anEntry); }
  1137. inline TInt RArray<TInt>::FindInOrder(TInt anEntry) const
  1138. #line 5621
  1139. { return RPointerArrayBase::FindIsqSigned(anEntry); }
  1140. inline TInt RArray<TInt>::FindInOrder(TInt anEntry, TInt& anIndex) const
  1141. #line 5644
  1142. { return RPointerArrayBase::BinarySearchSigned(anEntry,anIndex); }
  1143. inline TInt RArray<TInt>::SpecificFindInOrder(TInt anEntry, TInt aMode) const
  1144. #line 5675
  1145. { return RPointerArrayBase::FindIsqSigned(anEntry,aMode); }
  1146. inline TInt RArray<TInt>::SpecificFindInOrder(TInt anEntry, TInt& anIndex, TInt aMode) const
  1147. #line 5713
  1148. { return RPointerArrayBase::BinarySearchSigned(anEntry,anIndex,aMode); }
  1149. inline TInt RArray<TInt>::InsertInOrder(TInt anEntry)
  1150. #line 5735
  1151. { return RPointerArrayBase::InsertIsqSigned(anEntry,EFalse); }
  1152. inline TInt RArray<TInt>::InsertInOrderAllowRepeats(TInt anEntry)
  1153. #line 5758
  1154. { return RPointerArrayBase::InsertIsqSigned(anEntry,ETrue); }
  1155. inline RArray<TInt>::RArray(TInt* aEntries, TInt aCount)
  1156. : RPointerArrayBase((TAny**)aEntries, aCount)
  1157. #line 5781
  1158. {}
  1159. inline void RArray<TInt>::GranularCompress()
  1160. #line 5792
  1161. {RPointerArrayBase::GranularCompress();}
  1162. inline TInt RArray<TInt>::Reserve(TInt aCount)
  1163. #line 5810
  1164. { return RPointerArrayBase::DoReserve(aCount); }
  1165. inline void RArray<TInt>::Sort()
  1166. { HeapSortSigned(); }
  1167. inline TArray<TInt> RArray<TInt>::Array() const
  1168. { return TArray<TInt>(GetCount,GetElementPtr,(const CBase*)this); }
  1169. inline RArray<TUint>::RArray()
  1170. : RPointerArrayBase()
  1171. #line 5847
  1172. {}
  1173. inline RArray<TUint>::RArray(TInt aGranularity)
  1174. : RPointerArrayBase(aGranularity)
  1175. #line 5863
  1176. {}
  1177. #line 5883
  1178. inline RArray<TUint>::RArray(TInt aMinGrowBy, TInt aFactor)
  1179. : RPointerArrayBase(aMinGrowBy, aFactor)
  1180. {}
  1181. inline void RArray<TUint>::Close()
  1182. {RPointerArrayBase::Close();}
  1183. inline TInt RArray<TUint>::Count() const
  1184. {return RPointerArrayBase::Count(); }
  1185. inline const TUint& RArray<TUint>::operator[](TInt anIndex) const
  1186. #line 5930
  1187. {return (const TUint&)At(anIndex);}
  1188. inline TUint& RArray<TUint>::operator[](TInt anIndex)
  1189. #line 5953
  1190. {return (TUint&)At(anIndex);}
  1191. inline TInt RArray<TUint>::Append(TUint anEntry)
  1192. { return RPointerArrayBase::Append((const TAny*)anEntry); }
  1193. inline TInt RArray<TUint>::Insert(TUint anEntry, TInt aPos)
  1194. #line 5987
  1195. { return RPointerArrayBase::Insert((const TAny*)anEntry,aPos); }
  1196. inline void RArray<TUint>::Remove(TInt anIndex)
  1197. #line 6005
  1198. {RPointerArrayBase::Remove(anIndex);}
  1199. inline void RArray<TUint>::Compress()
  1200. {RPointerArrayBase::Compress();}
  1201. inline void RArray<TUint>::Reset()
  1202. #line 6033
  1203. {RPointerArrayBase::Reset();}
  1204. inline TInt RArray<TUint>::Find(TUint anEntry) const
  1205. #line 6051
  1206. { return RPointerArrayBase::Find((const TAny*)anEntry); }
  1207. inline TInt RArray<TUint>::FindInOrder(TUint anEntry) const
  1208. #line 6070
  1209. { return RPointerArrayBase::FindIsqUnsigned(anEntry); }
  1210. inline TInt RArray<TUint>::FindInOrder(TUint anEntry, TInt& anIndex) const
  1211. #line 6098
  1212. { return RPointerArrayBase::BinarySearchUnsigned(anEntry,anIndex); }
  1213. inline TInt RArray<TUint>::SpecificFindInOrder(TUint anEntry, TInt aMode) const
  1214. #line 6128
  1215. { return RPointerArrayBase::FindIsqUnsigned(anEntry,aMode); }
  1216. inline TInt RArray<TUint>::SpecificFindInOrder(TUint anEntry, TInt& anIndex, TInt aMode) const
  1217. #line 6163
  1218. { return RPointerArrayBase::BinarySearchUnsigned(anEntry,anIndex,aMode); }
  1219. inline TInt RArray<TUint>::InsertInOrder(TUint anEntry)
  1220. #line 6185
  1221. { return RPointerArrayBase::InsertIsqUnsigned(anEntry,EFalse); }
  1222. inline TInt RArray<TUint>::InsertInOrderAllowRepeats(TUint anEntry)
  1223. #line 6208
  1224. { return RPointerArrayBase::InsertIsqUnsigned(anEntry,ETrue); }
  1225. inline RArray<TUint>::RArray(TUint* aEntries, TInt aCount)
  1226. : RPointerArrayBase((TAny**)aEntries, aCount)
  1227. #line 6231
  1228. {}
  1229. inline void RArray<TUint>::GranularCompress()
  1230. #line 6244
  1231. {RPointerArrayBase::GranularCompress();}
  1232. inline TInt RArray<TUint>::Reserve(TInt aCount)
  1233. #line 6262
  1234. { return RPointerArrayBase::DoReserve(aCount); }
  1235. inline void RArray<TUint>::Sort()
  1236. { HeapSortUnsigned(); }
  1237. inline TArray<TUint> RArray<TUint>::Array() const
  1238. { return TArray<TUint>(GetCount,GetElementPtr,(const CBase*)this); }
  1239. #line 6293
  1240. inline void TIpcArgs::Set(TInt,TNothing)
  1241. {}
  1242. #line 6307
  1243. inline void TIpcArgs::Set(TInt aIndex,TInt aValue)
  1244. {
  1245. iArgs[aIndex] = aValue;
  1246. iFlags |= EUnspecified<<(aIndex*KBitsPerType);
  1247. }
  1248. #line 6324
  1249. inline void TIpcArgs::Set(TInt aIndex,const TAny* aValue)
  1250. {
  1251. iArgs[aIndex] = (TInt)aValue;
  1252. iFlags |= EUnspecified<<(aIndex*KBitsPerType);
  1253. }
  1254. #line 6341
  1255. inline void TIpcArgs::Set(TInt aIndex,RHandleBase aValue)
  1256. {
  1257. iArgs[aIndex] = (TInt)aValue.Handle();
  1258. iFlags |= EHandle<<(aIndex*KBitsPerType);
  1259. }
  1260. #line 6358
  1261. inline void TIpcArgs::Set(TInt aIndex,const TDesC8* aValue)
  1262. {
  1263. iArgs[aIndex] = (TInt)aValue;
  1264. iFlags |= EDesC8<<(aIndex*KBitsPerType);
  1265. }
  1266. #line 6377
  1267. inline void TIpcArgs::Set(TInt aIndex,const TDesC16* aValue)
  1268. {
  1269. iArgs[aIndex] = (TInt)aValue;
  1270. iFlags |= EDesC16<<(aIndex*KBitsPerType);
  1271. }
  1272. #line 6396
  1273. inline void TIpcArgs::Set(TInt aIndex,TDes8* aValue)
  1274. {
  1275. iArgs[aIndex] = (TInt)aValue;
  1276. iFlags |= EDes8<<(aIndex*KBitsPerType);
  1277. }
  1278. #line 6415
  1279. inline void TIpcArgs::Set(TInt aIndex,TDes16* aValue)
  1280. {
  1281. iArgs[aIndex] = (TInt)aValue;
  1282. iFlags |= EDes16<<(aIndex*KBitsPerType);
  1283. }
  1284. inline TIpcArgs::TArgType TIpcArgs::Type(TNothing)
  1285. { return EUnspecified; }
  1286. inline TIpcArgs::TArgType TIpcArgs::Type(TInt)
  1287. { return EUnspecified; }
  1288. inline TIpcArgs::TArgType TIpcArgs::Type(const TAny*)
  1289. { return EUnspecified; }
  1290. inline TIpcArgs::TArgType TIpcArgs::Type(RHandleBase)
  1291. { return EHandle; }
  1292. inline TIpcArgs::TArgType TIpcArgs::Type(const TDesC8*)
  1293. { return EDesC8; }
  1294. inline TIpcArgs::TArgType TIpcArgs::Type(const TDesC16*)
  1295. { return EDesC16; }
  1296. inline TIpcArgs::TArgType TIpcArgs::Type(TDes8*)
  1297. { return EDes8; }
  1298. inline TIpcArgs::TArgType TIpcArgs::Type(TDes16*)
  1299. { return EDes16; }
  1300. inline void TIpcArgs::Assign(TInt&,TIpcArgs::TNothing)
  1301. {}
  1302. inline void TIpcArgs::Assign(TInt& aArg,TInt aValue)
  1303. { aArg = aValue; }
  1304. inline void TIpcArgs::Assign(TInt& aArg,const TAny* aValue)
  1305. { aArg = (TInt)aValue; }
  1306. inline void TIpcArgs::Assign(TInt& aArg,RHandleBase aValue)
  1307. { aArg = (TInt)aValue.Handle(); }
  1308. inline void TIpcArgs::Assign(TInt& aArg,const TDesC8* aValue)
  1309. { aArg = (TInt)aValue; }
  1310. inline void TIpcArgs::Assign(TInt& aArg,const TDesC16* aValue)
  1311. { aArg = (TInt)aValue; }
  1312. inline void TIpcArgs::Assign(TInt& aArg,TDes8* aValue)
  1313. { aArg = (TInt)aValue; }
  1314. inline void TIpcArgs::Assign(TInt& aArg,TDes16* aValue)
  1315. { aArg = (TInt)aValue; }
  1316. inline SInt64::SInt64()
  1317. {}
  1318. inline SInt64::SInt64(Int64 a)
  1319. {
  1320. iData[0] = (TUint32)((Uint64)a);
  1321. iData[1] = (TUint32)(((Uint64)a)>>32);
  1322. }
  1323. inline SInt64& SInt64::operator=(Int64 a)
  1324. {
  1325. iData[0] = (TUint32)((Uint64)a);
  1326. iData[1] = (TUint32)(((Uint64)a)>>32);
  1327. return *this;
  1328. }
  1329. inline SInt64::operator Int64() const
  1330. {
  1331. Int64 x;
  1332. TUint32* px = (TUint32*)&x;
  1333. px[0] = iData[0];
  1334. px[1] = iData[1];
  1335. return x;
  1336. }
  1337. inline SUint64::SUint64()
  1338. {}
  1339. inline SUint64::SUint64(Uint64 a)
  1340. {
  1341. iData[0] = (TUint32)a;
  1342. iData[1] = (TUint32)(a>>32);
  1343. }
  1344. inline SUint64& SUint64::operator=(Uint64 a)
  1345. {
  1346. iData[0] = (TUint32)a;
  1347. iData[1] = (TUint32)(a>>32);
  1348. return *this;
  1349. }
  1350. inline SUint64::operator Uint64() const
  1351. {
  1352. Uint64 x;
  1353. TUint32* px = (TUint32*)&x;
  1354. px[0] = iData[0];
  1355. px[1] = iData[1];
  1356. return x;
  1357. }
  1358. inline SDouble::SDouble()
  1359. {}
  1360. inline SDouble::SDouble(TReal a)
  1361. {
  1362. const TUint32* pa = (const TUint32*)&a;
  1363. iData[0] = pa[0];
  1364. iData[1] = pa[1];
  1365. }
  1366. inline SDouble& SDouble::operator=(TReal a)
  1367. {
  1368. new (this) SDouble(a);
  1369. return *this;
  1370. }
  1371. inline SDouble::operator TReal() const
  1372. {
  1373. TReal x;
  1374. TUint32* px = (TUint32*)&x;
  1375. px[0] = iData[0];
  1376. px[1] = iData[1];
  1377. return x;
  1378. }
  1379. inline TSecureId::TSecureId()
  1380. {}
  1381. inline TSecureId::TSecureId(TUint32 aId)
  1382. : iId(aId) {}
  1383. inline TSecureId::operator TUint32() const
  1384. { return iId; }
  1385. inline TSecureId::TSecureId(TUid aId)
  1386. : iId(aId.iUid) {}
  1387. inline TSecureId::operator TUid() const
  1388. { return (TUid&)iId; }
  1389. inline const TSecureId* SSecureId::operator&() const
  1390. { return (const TSecureId*)this; }
  1391. inline SSecureId::operator const TSecureId&() const
  1392. { return (const TSecureId&)iId; }
  1393. inline SSecureId::operator TUint32() const
  1394. { return iId; }
  1395. inline SSecureId::operator TUid() const
  1396. { return (TUid&)iId; }
  1397. inline TVendorId::TVendorId()
  1398. {}
  1399. inline TVendorId::TVendorId(TUint32 aId)
  1400. : iId(aId) {}
  1401. inline TVendorId::operator TUint32() const
  1402. { return iId; }
  1403. inline TVendorId::TVendorId(TUid aId)
  1404. : iId(aId.iUid) {}
  1405. inline TVendorId::operator TUid() const
  1406. { return (TUid&)iId; }
  1407. inline const TVendorId* SVendorId::operator&() const
  1408. { return (const TVendorId*)this; }
  1409. inline SVendorId::operator const TVendorId&() const
  1410. { return (const TVendorId&)iId; }
  1411. inline SVendorId::operator TUint32() const
  1412. { return iId; }
  1413. inline SVendorId::operator TUid() const
  1414. { return (TUid&)iId; }
  1415. inline TCapabilitySet::TCapabilitySet()
  1416. {}
  1417. inline TCapabilitySet::TCapabilitySet(TCapability aCapability)
  1418. { new (this) TCapabilitySet(aCapability, aCapability); }
  1419. inline void TCapabilitySet::Set(TCapability aCapability)
  1420. { new (this) TCapabilitySet(aCapability, aCapability); }
  1421. inline void TCapabilitySet::Set(TCapability aCapability1, TCapability aCapability2)
  1422. { new (this) TCapabilitySet(aCapability1, aCapability2); }
  1423. inline TSecurityInfo::TSecurityInfo()
  1424. {}
  1425. inline TSecurityPolicy::TSecurityPolicy()
  1426. { new (this) TSecurityPolicy(EAlwaysFail); }
  1427. inline const TSecurityPolicy* TStaticSecurityPolicy::operator&() const
  1428. { return (const TSecurityPolicy*)this; }
  1429. inline TStaticSecurityPolicy::operator const TSecurityPolicy&() const
  1430. { return *(const TSecurityPolicy*)this; }
  1431. inline const TSecurityPolicy& TStaticSecurityPolicy::operator()() const
  1432. { return *(const TSecurityPolicy*)this; }
  1433. #line 6341 "C:\Symbian\9.1\S60_3rd\epoc32\include\e32cmn.h" /* stack depth 5 */
  1434. #line 13 "C:\Symbian\9.1\S60_3rd\epoc32\include\e32std.h" /* stack depth 4 */
  1435. class TFunctor
  1436. {
  1437. public:
  1438. __declspec(dllexport) virtual void operator()() =0;
  1439. };
  1440. #line 53
  1441. class TCallBack
  1442. {
  1443. public:
  1444. inline TCallBack();
  1445. inline TCallBack(TInt (*aFunction)(TAny* aPtr));
  1446. inline TCallBack(TInt (*aFunction)(TAny* aPtr),TAny* aPtr);
  1447. inline TInt CallBack() const;
  1448. public:
  1449. TInt (*iFunction)(TAny* aPtr);
  1450. TAny* iPtr;
  1451. };
  1452. #line 89
  1453. class TSglQueLink
  1454. {
  1455. public:
  1456. inline TSglQueLink() : iNext(0 )
  1457. {}
  1458. private:
  1459. __declspec(dllexport) void Enque(TSglQueLink* aLink);
  1460. public:
  1461. TSglQueLink* iNext;
  1462. friend class TSglQueBase;
  1463. };
  1464. #line 130
  1465. class TDblQueLinkBase
  1466. {
  1467. public:
  1468. inline TDblQueLinkBase() : iNext(0 )
  1469. {}
  1470. __declspec(dllexport) void Enque(TDblQueLinkBase* aLink);
  1471. __declspec(dllexport) void AddBefore(TDblQueLinkBase* aLink);
  1472. public:
  1473. TDblQueLinkBase* iNext;
  1474. TDblQueLinkBase* iPrev;
  1475. };
  1476. #line 166
  1477. class TDblQueLink : public TDblQueLinkBase
  1478. {
  1479. public:
  1480. __declspec(dllexport) void Deque();
  1481. };
  1482. #line 184
  1483. class TPriQueLink : public TDblQueLink
  1484. {
  1485. public:
  1486. TInt iPriority;
  1487. };
  1488. #line 205
  1489. class TDeltaQueLink : public TDblQueLinkBase
  1490. {
  1491. public:
  1492. TInt iDelta;
  1493. };
  1494. #line 224
  1495. class TTickCountQueLink : public TDblQueLink
  1496. {
  1497. public:
  1498. TUint iTickCount;
  1499. };
  1500. #line 248
  1501. class TSglQueBase
  1502. {
  1503. public:
  1504. __declspec(dllexport) TBool IsEmpty() const;
  1505. __declspec(dllexport) void SetOffset(TInt aOffset);
  1506. __declspec(dllexport) void Reset();
  1507. protected:
  1508. __declspec(dllexport) TSglQueBase();
  1509. __declspec(dllexport) TSglQueBase(TInt aOffset);
  1510. __declspec(dllexport) void DoAddFirst(TAny* aPtr);
  1511. __declspec(dllexport) void DoAddLast(TAny* aPtr);
  1512. __declspec(dllexport) void DoRemove(TAny* aPtr);
  1513. protected:
  1514. TSglQueLink* iHead;
  1515. TSglQueLink* iLast;
  1516. TInt iOffset;
  1517. private:
  1518. TSglQueBase(const TSglQueBase& aQue);
  1519. TSglQueBase &operator=(const TSglQueBase& aQue);
  1520. friend class TSglQueIterBase;
  1521. };
  1522. #line 296
  1523. class TDblQueBase
  1524. {
  1525. public:
  1526. __declspec(dllexport) TBool IsEmpty() const;
  1527. __declspec(dllexport) void SetOffset(TInt aOffset);
  1528. __declspec(dllexport) void Reset();
  1529. protected:
  1530. __declspec(dllexport) TDblQueBase();
  1531. __declspec(dllexport) TDblQueBase(TInt aOffset);
  1532. __declspec(dllexport) void DoAddFirst(TAny* aPtr);
  1533. __declspec(dllexport) void DoAddLast(TAny* aPtr);
  1534. __declspec(dllexport) void DoAddPriority(TAny* aPtr);
  1535. __declspec(dllexport) void __DbgTestEmpty() const;
  1536. protected:
  1537. TDblQueLink iHead;
  1538. TInt iOffset;
  1539. private:
  1540. TDblQueBase(const TDblQueBase& aQue);
  1541. TDblQueBase& operator=(const TDblQueBase& aQue);
  1542. friend class TDblQueIterBase;
  1543. };
  1544. #line 338
  1545. class TDeltaQueBase : public TDblQueBase
  1546. {
  1547. public:
  1548. __declspec(dllexport) TBool CountDown();
  1549. __declspec(dllexport) TBool CountDown(TInt aValue);
  1550. __declspec(dllexport) TBool FirstDelta(TInt& aValue);
  1551. __declspec(dllexport) void Reset();
  1552. protected:
  1553. __declspec(dllexport) TDeltaQueBase();
  1554. __declspec(dllexport) TDeltaQueBase(TInt aOffset);
  1555. __declspec(dllexport) void DoAddDelta(TAny* aPtr,TInt aDelta);
  1556. __declspec(dllexport) void DoRemove(TAny* aPtr);
  1557. __declspec(dllexport) TAny* DoRemoveFirst();
  1558. protected:
  1559. TInt* iFirstDelta;
  1560. };
  1561. #line 375
  1562. template <class T>
  1563. class TSglQue : public TSglQueBase
  1564. {
  1565. public:
  1566. inline TSglQue();
  1567. inline explicit TSglQue(TInt aOffset);
  1568. inline void AddFirst(T& aRef);
  1569. inline void AddLast(T& aRef);
  1570. inline TBool IsFirst(const T* aPtr) const;
  1571. inline TBool IsLast(const T* aPtr) const;
  1572. inline T* First() const;
  1573. inline T* Last() const;
  1574. inline void Remove(T& aRef);
  1575. };
  1576. #line 407
  1577. template <class T>
  1578. class TDblQue : public TDblQueBase
  1579. {
  1580. public:
  1581. inline TDblQue();
  1582. inline explicit TDblQue(TInt aOffset);
  1583. inline void AddFirst(T& aRef);
  1584. inline void AddLast(T& aRef);
  1585. inline TBool IsHead(const T* aPtr) const;
  1586. inline TBool IsFirst(const T* aPtr) const;
  1587. inline TBool IsLast(const T* aPtr) const;
  1588. inline T* First() const;
  1589. inline T* Last() const;
  1590. };
  1591. #line 441
  1592. template <class T>
  1593. class TPriQue : public TDblQueBase
  1594. {
  1595. public:
  1596. inline TPriQue();
  1597. inline explicit TPriQue(TInt aOffset);
  1598. inline void Add(T& aRef);
  1599. inline TBool IsHead(const T* aPtr) const;
  1600. inline TBool IsFirst(const T* aPtr) const;
  1601. inline TBool IsLast(const T* aPtr) const;
  1602. inline T* First() const;
  1603. inline T* Last() const;
  1604. };
  1605. #line 487
  1606. template <class T>
  1607. class TDeltaQue : public TDeltaQueBase
  1608. {
  1609. public:
  1610. inline TDeltaQue();
  1611. inline explicit TDeltaQue(TInt aOffset);
  1612. inline void Add(T& aRef,TInt aDelta);
  1613. inline void Remove(T& aRef);
  1614. inline T* RemoveFirst();
  1615. };
  1616. class TTickCountQueLink;
  1617. #line 520
  1618. class TTickCountQue : public TDblQueBase
  1619. {
  1620. public:
  1621. TTickCountQue();
  1622. void Add(TTickCountQueLink& aRef);
  1623. TTickCountQueLink* First() const;
  1624. TTickCountQueLink* RemoveFirst();
  1625. TTickCountQueLink* RemoveFirst(TUint aTickCount);
  1626. };
  1627. #line 543
  1628. class TSglQueIterBase
  1629. {
  1630. public:
  1631. __declspec(dllexport) void SetToFirst();
  1632. protected:
  1633. __declspec(dllexport) TSglQueIterBase(TSglQueBase& aQue);
  1634. __declspec(dllexport) TAny* DoPostInc();
  1635. __declspec(dllexport) TAny* DoCurrent();
  1636. __declspec(dllexport) void DoSet(TAny* aLink);
  1637. protected:
  1638. TInt iOffset;
  1639. TSglQueLink* iHead;
  1640. TSglQueLink* iNext;
  1641. };
  1642. #line 571
  1643. template <class T>
  1644. class TSglQueIter : public TSglQueIterBase
  1645. {
  1646. public:
  1647. inline TSglQueIter(TSglQueBase& aQue);
  1648. inline void Set(T& aLink);
  1649. inline operator T*();
  1650. inline T* operator++(TInt);
  1651. };
  1652. #line 594
  1653. class TDblQueIterBase
  1654. {
  1655. public:
  1656. __declspec(dllexport) void SetToFirst();
  1657. __declspec(dllexport) void SetToLast();
  1658. protected:
  1659. __declspec(dllexport) TDblQueIterBase(TDblQueBase& aQue);
  1660. __declspec(dllexport) TAny* DoPostInc();
  1661. __declspec(dllexport) TAny* DoPostDec();
  1662. __declspec(dllexport) TAny* DoCurrent();
  1663. __declspec(dllexport) void DoSet(TAny* aLink);
  1664. protected:
  1665. TInt iOffset;
  1666. TDblQueLinkBase* iHead;
  1667. TDblQueLinkBase* iNext;
  1668. };
  1669. #line 635
  1670. template <class T>
  1671. class TDblQueIter : public TDblQueIterBase
  1672. {
  1673. public:
  1674. inline TDblQueIter(TDblQueBase& aQue);
  1675. inline void Set(T& aLink);
  1676. inline operator T*();
  1677. inline T* operator++(TInt);
  1678. inline T* operator--(TInt);
  1679. };
  1680. #line 660
  1681. enum TKeyCmpText
  1682. {
  1683. ECmpNormal,
  1684. #line 682
  1685. ECmpNormal8,
  1686. #line 696
  1687. ECmpNormal16,
  1688. #line 706
  1689. ECmpFolded,
  1690. #line 717
  1691. ECmpFolded8,
  1692. #line 728
  1693. ECmpFolded16,
  1694. #line 738
  1695. ECmpCollated,
  1696. #line 749
  1697. ECmpCollated8,
  1698. #line 761
  1699. ECmpCollated16
  1700. };
  1701. #line 777
  1702. enum TKeyCmpNumeric
  1703. {
  1704. ECmpTInt8=((ECmpCollated16+1)<<1),
  1705. ECmpTInt16,
  1706. ECmpTInt32,
  1707. ECmpTInt,
  1708. ECmpTUint8,
  1709. ECmpTUint16,
  1710. ECmpTUint32,
  1711. ECmpTUint,
  1712. ECmpTInt64
  1713. };
  1714. #line 856
  1715. class TKey
  1716. {
  1717. public:
  1718. inline void SetPtr(const TAny* aPtr);
  1719. __declspec(dllexport) virtual TInt Compare(TInt aLeft,TInt aRight) const;
  1720. __declspec(dllexport) virtual TAny* At(TInt anIndex) const;
  1721. protected:
  1722. __declspec(dllexport) TKey();
  1723. __declspec(dllexport) TKey(TInt aOffset,TKeyCmpText aType);
  1724. __declspec(dllexport) TKey(TInt aOffset,TKeyCmpText aType,TInt aLength);
  1725. __declspec(dllexport) TKey(TInt aOffset,TKeyCmpNumeric aType);
  1726. protected:
  1727. TInt iKeyOffset;
  1728. TInt iKeyLength;
  1729. TInt iCmpType;
  1730. const TAny* iPtr;
  1731. };
  1732. #line 890
  1733. class TSwap
  1734. {
  1735. public:
  1736. __declspec(dllexport) TSwap();
  1737. __declspec(dllexport) virtual void Swap(TInt aLeft,TInt aRight) const;
  1738. };
  1739. #line 918
  1740. class TCharF : public TChar
  1741. {
  1742. public:
  1743. inline TCharF(TUint aChar);
  1744. inline TCharF(const TChar& aChar);
  1745. inline TCharF& operator=(TUint aChar);
  1746. inline TCharF& operator=(const TChar& aChar);
  1747. };
  1748. #line 937
  1749. class TCharLC : public TChar
  1750. {
  1751. public:
  1752. inline TCharLC(TUint aChar);
  1753. inline TCharLC(const TChar& aChar);
  1754. inline TCharLC& operator=(TUint aChar);
  1755. inline TCharLC& operator=(const TChar& aChar);
  1756. };
  1757. #line 956
  1758. class TCharUC : public TChar
  1759. {
  1760. public:
  1761. inline TCharUC(TUint aChar);
  1762. inline TCharUC(const TChar& aChar);
  1763. inline TCharUC& operator=(TUint aChar);
  1764. inline TCharUC& operator=(const TChar& aChar);
  1765. };
  1766. #line 982
  1767. class TRealFormat
  1768. {
  1769. public:
  1770. __declspec(dllexport) TRealFormat();
  1771. __declspec(dllexport) TRealFormat(TInt aWidth);
  1772. __declspec(dllexport) TRealFormat(TInt aWidth,TInt aDecimalPlaces);
  1773. public:
  1774. #line 1007
  1775. TInt iType;
  1776. TInt iWidth;
  1777. #line 1025
  1778. TInt iPlaces;
  1779. #line 1038
  1780. TChar iPoint;
  1781. #line 1051
  1782. TChar iTriad;
  1783. #line 1071
  1784. TInt iTriLen;
  1785. };
  1786. #line 1089
  1787. class TLexMark8
  1788. {
  1789. public:
  1790. inline TLexMark8();
  1791. private:
  1792. inline TLexMark8(const TUint8* aString);
  1793. const TUint8* iPtr;
  1794. friend class TLex8;
  1795. public: void __DbgTestInvariant() const; void __DbgTest(TAny *aPtr) const ;
  1796. };
  1797. class TRealX;
  1798. #line 1123
  1799. class TLex8
  1800. {
  1801. public:
  1802. __declspec(dllexport) TLex8();
  1803. inline TLex8(const TUint8* aString);
  1804. inline TLex8(const TDesC8& aDes);
  1805. inline TLex8& operator=(const TUint8* aString);
  1806. inline TLex8& operator=(const TDesC8& aDes);
  1807. inline TBool Eos() const;
  1808. inline void Mark(TLexMark8& aMark) const;
  1809. inline void Mark();
  1810. __declspec(dllexport) void Inc();
  1811. __declspec(dllexport) void Inc(TInt aNumber);
  1812. __declspec(dllexport) TChar Get();
  1813. __declspec(dllexport) TChar Peek() const;
  1814. __declspec(dllexport) void UnGet();
  1815. inline void UnGetToMark();
  1816. __declspec(dllexport) void UnGetToMark(const TLexMark8 aMark);
  1817. __declspec(dllexport) void SkipSpace();
  1818. inline void SkipAndMark(TInt aNumber);
  1819. __declspec(dllexport) void SkipAndMark(TInt aNumber, TLexMark8& aMark);
  1820. inline void SkipSpaceAndMark();
  1821. __declspec(dllexport) void SkipSpaceAndMark(TLexMark8& aMark);
  1822. __declspec(dllexport) void SkipCharacters();
  1823. inline TInt TokenLength() const;
  1824. __declspec(dllexport) TInt TokenLength(const TLexMark8 aMark) const;
  1825. __declspec(dllexport) TPtrC8 MarkedToken() const;
  1826. __declspec(dllexport) TPtrC8 MarkedToken(const TLexMark8 aMark) const;
  1827. __declspec(dllexport) TPtrC8 NextToken();
  1828. __declspec(dllexport) TPtrC8 Remainder() const;
  1829. __declspec(dllexport) TPtrC8 RemainderFromMark() const;
  1830. __declspec(dllexport) TPtrC8 RemainderFromMark(const TLexMark8 aMark) const;
  1831. __declspec(dllexport) TInt Offset() const;
  1832. inline TInt MarkedOffset() const;
  1833. __declspec(dllexport) TInt MarkedOffset(const TLexMark8 aMark) const;
  1834. __declspec(dllexport) TInt Val(TInt8& aVal);
  1835. __declspec(dllexport) TInt Val(TInt16& aVal);
  1836. __declspec(dllexport) TInt Val(TInt32& aVal);
  1837. __declspec(dllexport) TInt Val(TInt64& aVal);
  1838. inline TInt Val(TInt& aVal);
  1839. __declspec(dllexport) TInt Val(TUint8& aVal,TRadix aRadix);
  1840. __declspec(dllexport) TInt Val(TUint16& aVal,TRadix aRadix);
  1841. __declspec(dllexport) TInt Val(TUint32& aVal,TRadix aRadix);
  1842. __declspec(dllexport) TInt Val(TInt64& aVal, TRadix aRadix);
  1843. inline TInt Val(TUint& aVal,TRadix aRadix=EDecimal);
  1844. __declspec(dllexport) TInt BoundedVal(TInt32& aVal,TInt aLimit);
  1845. __declspec(dllexport) TInt BoundedVal(TInt64& aVal, const TInt64& aLimit);
  1846. __declspec(dllexport) TInt BoundedVal(TUint32& aVal,TRadix aRadix,TUint aLimit);
  1847. __declspec(dllexport) TInt BoundedVal(TInt64& aVal, TRadix aRadix, const TInt64& aLimit);
  1848. __declspec(dllexport) TInt Val(TReal32& aVal);
  1849. __declspec(dllexport) TInt Val(TReal32& aVal,TChar aPoint);
  1850. __declspec(dllexport) TInt Val(TReal64& aVal);
  1851. __declspec(dllexport) TInt Val(TReal64& aVal,TChar aPoint);
  1852. inline void Assign(const TLex8& aLex);
  1853. __declspec(dllexport) void Assign(const TUint8* aString);
  1854. __declspec(dllexport) void Assign(const TDesC8& aDes);
  1855. TInt Val(TRealX& aVal);
  1856. TInt Val(TRealX& aVal, TChar aPoint);
  1857. inline TInt Val(TInt32& aVal,TInt aLimit) { return BoundedVal(aVal,aLimit); };
  1858. inline TInt Val(TInt64& aVal,const TInt64& aLimit) { return BoundedVal(aVal,aLimit); };
  1859. inline TInt Val(TUint32& aVal,TRadix aRadix,TUint aLimit) { return BoundedVal(aVal,aRadix,aLimit); };
  1860. inline TInt Val(TInt64& aVal,TRadix aRadix,const TInt64& aLimit) { return BoundedVal(aVal,aRadix,aLimit); };
  1861. private:
  1862. void Scndig(TInt& aSig,TInt& aExp,TInt64& aDl);
  1863. void ScndigAfterPoint(TInt& aSig,TInt64& aDl);
  1864. void ValidateMark(const TLexMark8 aMark) const;
  1865. private:
  1866. const TUint8* iNext;
  1867. const TUint8* iBuf;
  1868. const TUint8* iEnd;
  1869. TLexMark8 iMark;
  1870. public: void __DbgTestInvariant() const; void __DbgTest(TAny *aPtr) const ;
  1871. };
  1872. #line 1220
  1873. class TLexMark16
  1874. {
  1875. public:
  1876. inline TLexMark16();
  1877. private:
  1878. inline TLexMark16(const TUint16* aString);
  1879. const TUint16* iPtr;
  1880. friend class TLex16;
  1881. public: void __DbgTestInvariant() const; void __DbgTest(TAny *aPtr) const ;
  1882. };
  1883. #line 1253
  1884. class TLex16
  1885. {
  1886. public:
  1887. __declspec(dllexport) TLex16();
  1888. inline TLex16(const TUint16* aString);
  1889. inline TLex16(const TDesC16& aDes);
  1890. inline TLex16& operator=(const TUint16* aString);
  1891. inline TLex16& operator=(const TDesC16& aDes);
  1892. inline TBool Eos() const;
  1893. inline void Mark();
  1894. inline void Mark(TLexMark16& aMark) const;
  1895. __declspec(dllexport) void Inc();
  1896. __declspec(dllexport) void Inc(TInt aNumber);
  1897. __declspec(dllexport) TChar Get();
  1898. __declspec(dllexport) TChar Peek() const;
  1899. __declspec(dllexport) void UnGet();
  1900. inline void UnGetToMark();
  1901. __declspec(dllexport) void UnGetToMark(const TLexMark16 aMark);
  1902. __declspec(dllexport) void SkipSpace();
  1903. inline void SkipAndMark(TInt aNumber);
  1904. __declspec(dllexport) void SkipAndMark(TInt aNumber, TLexMark16& aMark);
  1905. __declspec(dllexport) void SkipSpaceAndMark(TLexMark16& aMark);
  1906. inline void SkipSpaceAndMark();
  1907. __declspec(dllexport) void SkipCharacters();
  1908. inline TInt TokenLength() const;
  1909. __declspec(dllexport) TInt TokenLength(const TLexMark16 aMark) const;
  1910. __declspec(dllexport) TPtrC16 MarkedToken() const;
  1911. __declspec(dllexport) TPtrC16 MarkedToken(const TLexMark16 aMark) const;
  1912. __declspec(dllexport) TPtrC16 NextToken();
  1913. __declspec(dllexport) TPtrC16 Remainder() const;
  1914. __declspec(dllexport) TPtrC16 RemainderFromMark() const;
  1915. __declspec(dllexport) TPtrC16 RemainderFromMark(const TLexMark16 aMark) const;
  1916. __declspec(dllexport) TInt Offset() const;
  1917. inline TInt MarkedOffset() const;
  1918. __declspec(dllexport) TInt MarkedOffset(const TLexMark16 aMark) const;
  1919. __declspec(dllexport) TInt Val(TInt8& aVal);
  1920. __declspec(dllexport) TInt Val(TInt16& aVal);
  1921. __declspec(dllexport) TInt Val(TInt32& aVal);
  1922. __declspec(dllexport) TInt Val(TInt64& aVal);
  1923. inline TInt Val(TInt& aVal);
  1924. __declspec(dllexport) TInt Val(TUint8& aVal,TRadix aRadix);
  1925. __declspec(dllexport) TInt Val(TUint16& aVal,TRadix aRadix);
  1926. __declspec(dllexport) TInt Val(TUint32& aVal,TRadix aRadix);
  1927. __declspec(dllexport) TInt Val(TInt64& aVal, TRadix aRadix);
  1928. inline TInt Val(TUint& aVal,TRadix aRadix=EDecimal);
  1929. __declspec(dllexport) TInt BoundedVal(TInt32& aVal,TInt aLimit);
  1930. __declspec(dllexport) TInt BoundedVal(TInt64& aVal, const TInt64& aLimit);
  1931. __declspec(dllexport) TInt BoundedVal(TUint32& aVal,TRadix aRadix,TUint aLimit);
  1932. __declspec(dllexport) TInt BoundedVal(TInt64& aVal, TRadix aRadix, const TInt64& aLimit);
  1933. __declspec(dllexport) TInt Val(TReal32& aVal);
  1934. __declspec(dllexport) TInt Val(TReal32& aVal,TChar aPoint);
  1935. __declspec(dllexport) TInt Val(TReal64& aVal);
  1936. __declspec(dllexport) TInt Val(TReal64& aVal,TChar aPoint);
  1937. inline void Assign(const TLex16& aLex);
  1938. __declspec(dllexport) void Assign(const TUint16* aString);
  1939. __declspec(dllexport) void Assign(const TDesC16& aDes);
  1940. TInt Val(TRealX& aVal);
  1941. TInt Val(TRealX& aVal, TChar aPoint);
  1942. inline TInt Val(TInt32& aVal,TInt aLimit) { return BoundedVal(aVal,aLimit); };
  1943. inline TInt Val(TInt64& aVal,const TInt64& aLimit) { return BoundedVal(aVal,aLimit); };
  1944. inline TInt Val(TUint32& aVal,TRadix aRadix,TUint aLimit) { return BoundedVal(aVal,aRadix,aLimit); };
  1945. inline TInt Val(TInt64& aVal,TRadix aRadix,const TInt64& aLimit) { return BoundedVal(aVal,aRadix,aLimit); };
  1946. private:
  1947. void Scndig(TInt& aSig,TInt& aExp,TInt64& aDl);
  1948. void ValidateMark(const TLexMark16 aMark) const;
  1949. private:
  1950. const TUint16* iNext;
  1951. const TUint16* iBuf;
  1952. const TUint16* iEnd;
  1953. TLexMark16 iMark;
  1954. public: void __DbgTestInvariant() const; void __DbgTest(TAny *aPtr) const ;
  1955. };
  1956. #line 1355
  1957. typedef TLex16 TLex;
  1958. #line 1373
  1959. typedef TLexMark16 TLexMark;
  1960. #line 1430
  1961. class TCheckedUid
  1962. {
  1963. public:
  1964. __declspec(dllexport) TCheckedUid();
  1965. __declspec(dllexport) TCheckedUid(const TUidType& aUidType);
  1966. __declspec(dllexport) TCheckedUid(const TDesC8& aPtr);
  1967. __declspec(dllexport) void Set(const TUidType& aUidType);
  1968. __declspec(dllexport) void Set(const TDesC8& aPtr);
  1969. __declspec(dllexport) TPtrC8 Des() const;
  1970. inline const TUidType& UidType() const;
  1971. protected:
  1972. __declspec(dllexport) TUint Check() const;
  1973. private:
  1974. TUidType iType;
  1975. TUint iCheck;
  1976. };
  1977. #line 1469
  1978. class TDateTime
  1979. {
  1980. public:
  1981. inline TDateTime();
  1982. __declspec(dllexport) TDateTime(TInt aYear,TMonth aMonth,TInt aDay,TInt aHour,TInt aMinute, TInt aSecond,TInt aMicroSecond);
  1983. __declspec(dllexport) TInt Set(TInt aYear,TMonth aMonth,TInt aDay,TInt aHour,TInt aMinute, TInt aSecond,TInt aMicroSecond);
  1984. __declspec(dllexport) TInt SetYear(TInt aYear);
  1985. __declspec(dllexport) TInt SetYearLeapCheck(TInt aYear);
  1986. __declspec(dllexport) TInt SetMonth(TMonth aMonth);
  1987. __declspec(dllexport) TInt SetDay(TInt aDay);
  1988. __declspec(dllexport) TInt SetHour(TInt aHour);
  1989. __declspec(dllexport) TInt SetMinute(TInt aMinute);
  1990. __declspec(dllexport) TInt SetSecond(TInt aSecond);
  1991. __declspec(dllexport) TInt SetMicroSecond(TInt aMicroSecond);
  1992. inline TInt Year() const;
  1993. inline TMonth Month() const;
  1994. inline TInt Day() const;
  1995. inline TInt Hour() const;
  1996. inline TInt Minute() const;
  1997. inline TInt Second() const;
  1998. inline TInt MicroSecond() const;
  1999. private:
  2000. TInt iYear;
  2001. TMonth iMonth;
  2002. TInt iDay;
  2003. TInt iHour;
  2004. TInt iMinute;
  2005. TInt iSecond;
  2006. TInt iMicroSecond;
  2007. };
  2008. #line 1516
  2009. class TTimeIntervalMicroSeconds
  2010. {
  2011. public:
  2012. inline TTimeIntervalMicroSeconds();
  2013. inline TTimeIntervalMicroSeconds(const TInt64& aInterval);
  2014. inline TTimeIntervalMicroSeconds& operator=(const TInt64& aInterval);
  2015. inline TBool operator==(const TTimeIntervalMicroSeconds& aInterval) const;
  2016. inline TBool operator!=(const TTimeIntervalMicroSeconds& aInterval) const;
  2017. inline TBool operator>=(const TTimeIntervalMicroSeconds& aInterval) const;
  2018. inline TBool operator<=(const TTimeIntervalMicroSeconds& aInterval) const;
  2019. inline TBool operator>(const TTimeIntervalMicroSeconds& aInterval) const;
  2020. inline TBool operator<(const TTimeIntervalMicroSeconds& aInterval) const;
  2021. inline const TInt64& Int64() const;
  2022. private:
  2023. TInt64 iInterval;
  2024. };
  2025. #line 1554
  2026. class TTimeIntervalBase
  2027. {
  2028. public:
  2029. inline TBool operator==(TTimeIntervalBase aInterval) const;
  2030. inline TBool operator!=(TTimeIntervalBase aInterval) const;
  2031. inline TBool operator>=(TTimeIntervalBase aInterval) const;
  2032. inline TBool operator<=(TTimeIntervalBase aInterval) const;
  2033. inline TBool operator>(TTimeIntervalBase aInterval) const;
  2034. inline TBool operator<(TTimeIntervalBase aInterval) const;
  2035. inline TInt Int() const;
  2036. protected:
  2037. inline TTimeIntervalBase();
  2038. inline TTimeIntervalBase(TInt aInterval);
  2039. protected:
  2040. TInt iInterval;
  2041. };
  2042. #line 1583
  2043. class TTimeIntervalMicroSeconds32 : public TTimeIntervalBase
  2044. {
  2045. public:
  2046. inline TTimeIntervalMicroSeconds32();
  2047. inline TTimeIntervalMicroSeconds32(TInt aInterval);
  2048. inline TTimeIntervalMicroSeconds32& operator=(TInt aInterval);
  2049. };
  2050. #line 1606
  2051. class TTimeIntervalSeconds : public TTimeIntervalBase
  2052. {
  2053. public:
  2054. inline TTimeIntervalSeconds();
  2055. inline TTimeIntervalSeconds(TInt aInterval);
  2056. inline TTimeIntervalSeconds& operator=(TInt aInterval);
  2057. };
  2058. #line 1626
  2059. class TTimeIntervalMinutes : public TTimeIntervalBase
  2060. {
  2061. public:
  2062. inline TTimeIntervalMinutes();
  2063. inline TTimeIntervalMinutes(TInt aInterval);
  2064. inline TTimeIntervalMinutes& operator=(TInt aInterval);
  2065. };
  2066. #line 1646
  2067. class TTimeIntervalHours : public TTimeIntervalBase
  2068. {
  2069. public:
  2070. inline TTimeIntervalHours();
  2071. inline TTimeIntervalHours(TInt aInterval);
  2072. inline TTimeIntervalHours& operator=(TInt aInterval);
  2073. };
  2074. #line 1666
  2075. class TTimeIntervalDays : public TTimeIntervalBase
  2076. {
  2077. public:
  2078. inline TTimeIntervalDays();
  2079. inline TTimeIntervalDays(TInt aInterval);
  2080. inline TTimeIntervalDays& operator=(TInt aInterval);
  2081. };
  2082. #line 1686
  2083. class TTimeIntervalMonths : public TTimeIntervalBase
  2084. {
  2085. public:
  2086. inline TTimeIntervalMonths();
  2087. inline TTimeIntervalMonths(TInt aInterval);
  2088. inline TTimeIntervalMonths& operator=(TInt aInterval);
  2089. };
  2090. #line 1706
  2091. class TTimeIntervalYears : public TTimeIntervalBase
  2092. {
  2093. public:
  2094. inline TTimeIntervalYears();
  2095. inline TTimeIntervalYears(TInt aInterval);
  2096. inline TTimeIntervalYears& operator=(TInt aInterval);
  2097. };
  2098. #line 1725
  2099. enum {
  2100.      EParseTimePresent=0x1,
  2101.      EParseDatePresent=0x2
  2102.      };
  2103. #line 1770
  2104. class TTime
  2105. {
  2106. public:
  2107. inline TTime();
  2108. inline TTime(const TInt64& aTime);
  2109. __declspec(dllexport) TTime(const TDesC& aString);
  2110. __declspec(dllexport) TTime(const TDateTime& aDateTime);
  2111. inline TTime& operator=(const TInt64& aTime);
  2112. __declspec(dllexport) TTime& operator=(const TDateTime& aDateTime);
  2113. __declspec(dllexport) void HomeTime();
  2114. __declspec(dllexport) void UniversalTime();
  2115. __declspec(dllexport) TInt Set(const TDesC& aString);
  2116. __declspec(dllexport) TDateTime DateTime() const;
  2117. __declspec(dllexport) TTimeIntervalMicroSeconds MicroSecondsFrom(TTime aTime) const;
  2118. __declspec(dllexport) TInt SecondsFrom(TTime aTime,TTimeIntervalSeconds& aInterval) const;
  2119. __declspec(dllexport) TInt MinutesFrom(TTime aTime,TTimeIntervalMinutes& aInterval) const;
  2120. __declspec(dllexport) TInt HoursFrom(TTime aTime,TTimeIntervalHours& aInterval) const;
  2121. __declspec(dllexport) TTimeIntervalDays DaysFrom(TTime aTime) const;
  2122. __declspec(dllexport) TTimeIntervalMonths MonthsFrom(TTime aTime) const;
  2123. __declspec(dllexport) TTimeIntervalYears YearsFrom(TTime aTime) const;
  2124. __declspec(dllexport) TInt DaysInMonth() const;
  2125. __declspec(dllexport) TDay DayNoInWeek() const;
  2126. __declspec(dllexport) TInt DayNoInMonth() const;
  2127. __declspec(dllexport) TInt DayNoInYear() const;
  2128. __declspec(dllexport) TInt DayNoInYear(TTime aStartDate) const;
  2129. __declspec(dllexport) TInt WeekNoInYear() const;
  2130. __declspec(dllexport) TInt WeekNoInYear(TTime aStartDate) const;
  2131. __declspec(dllexport) TInt WeekNoInYear(TFirstWeekRule aRule) const;
  2132. __declspec(dllexport) TInt WeekNoInYear(TTime aStartDate,TFirstWeekRule aRule) const;
  2133. __declspec(dllexport) void FormatL(TDes& aDes,const TDesC& aFormat) const;
  2134. __declspec(dllexport) void RoundUpToNextMinute();
  2135. __declspec(dllexport) TInt Parse(const TDesC& aDes,TInt aCenturyOffset=0);
  2136. __declspec(dllexport) TTime operator+(TTimeIntervalYears aYear) const;
  2137. __declspec(dllexport) TTime operator+(TTimeIntervalMonths aMonth) const;
  2138. __declspec(dllexport) TTime operator+(TTimeIntervalDays aDay) const;
  2139. __declspec(dllexport) TTime operator+(TTimeIntervalHours aHour) const;
  2140. __declspec(dllexport) TTime operator+(TTimeIntervalMinutes aMinute) const;
  2141. __declspec(dllexport) TTime operator+(TTimeIntervalSeconds aSecond) const;
  2142. __declspec(dllexport) TTime operator+(TTimeIntervalMicroSeconds aMicroSecond) const;
  2143. __declspec(dllexport) TTime operator+(TTimeIntervalMicroSeconds32 aMicroSecond) const;
  2144. __declspec(dllexport) TTime operator-(TTimeIntervalYears aYear) const;
  2145. __declspec(dllexport) TTime operator-(TTimeIntervalMonths aMonth) const;
  2146. __declspec(dllexport) TTime operator-(TTimeIntervalDays aDay) const;
  2147. __declspec(dllexport) TTime operator-(TTimeIntervalHours aHour) const;
  2148. __declspec(dllexport) TTime operator-(TTimeIntervalMinutes aMinute) const;
  2149. __declspec(dllexport) TTime operator-(TTimeIntervalSeconds aSecond) const;
  2150. __declspec(dllexport) TTime operator-(TTimeIntervalMicroSeconds aMicroSecond) const;
  2151. __declspec(dllexport) TTime operator-(TTimeIntervalMicroSeconds32 aMicroSecond) const;
  2152. __declspec(dllexport) TTime& operator+=(TTimeIntervalYears aYear);
  2153. __declspec(dllexport) TTime& operator+=(TTimeIntervalMonths aMonth);
  2154. __declspec(dllexport) TTime& operator+=(TTimeIntervalDays aDay);
  2155. __declspec(dllexport) TTime& operator+=(TTimeIntervalHours aHour);
  2156. __declspec(dllexport) TTime& operator+=(TTimeIntervalMinutes aMinute);
  2157. __declspec(dllexport) TTime& operator+=(TTimeIntervalSeconds aSecond);
  2158. __declspec(dllexport) TTime& operator+=(TTimeIntervalMicroSeconds aMicroSecond);
  2159. __declspec(dllexport) TTime& operator+=(TTimeIntervalMicroSeconds32 aMicroSecond);
  2160. __declspec(dllexport) TTime& operator-=(TTimeIntervalYears aYear);
  2161. __declspec(dllexport) TTime& operator-=(TTimeIntervalMonths aMonth);
  2162. __declspec(dllexport) TTime& operator-=(TTimeIntervalDays aDay);
  2163. __declspec(dllexport) TTime& operator-=(TTimeIntervalHours aHour);
  2164. __declspec(dllexport) TTime& operator-=(TTimeIntervalMinutes aMinute);
  2165. __declspec(dllexport) TTime& operator-=(TTimeIntervalSeconds aSecond);
  2166. __declspec(dllexport) TTime& operator-=(TTimeIntervalMicroSeconds aMicroSecond);
  2167. __declspec(dllexport) TTime& operator-=(TTimeIntervalMicroSeconds32 aMicroSecond);
  2168. inline TBool operator==(TTime aTime) const;
  2169. inline TBool operator!=(TTime aTime) const;
  2170. inline TBool operator>=(TTime aTime) const;
  2171. inline TBool operator<=(TTime aTime) const;
  2172. inline TBool operator>(TTime aTime) const;
  2173. inline TBool operator<(TTime aTime) const;
  2174. inline const TInt64& Int64() const;
  2175. private:
  2176. static TTime Convert(const TDateTime& aDateTime);
  2177. private:
  2178. TInt64 iTime;
  2179. public: void __DbgTestInvariant() const; void __DbgTest(TAny *aPtr) const ;
  2180. };
  2181. #line 1861
  2182. class Time
  2183. {
  2184. public:
  2185. __declspec(dllexport) static TTime NullTTime();
  2186. __declspec(dllexport) static TTime MaxTTime();
  2187. __declspec(dllexport) static TTime MinTTime();
  2188. __declspec(dllexport) static TInt DaysInMonth(TInt aYear, TMonth aMonth);
  2189. __declspec(dllexport) static TBool IsLeapYear(TInt aYear);
  2190. __declspec(dllexport) static TInt LeapYearsUpTo(TInt aYear);
  2191. };
  2192. #line 1887
  2193. class TDayName : public TBuf<KMaxDayName>
  2194. {
  2195. public:
  2196. __declspec(dllexport) TDayName();
  2197. __declspec(dllexport) TDayName(TDay aDay);
  2198. __declspec(dllexport) void Set(TDay aDay);
  2199. };
  2200. #line 1915
  2201. class TDayNameAbb : public TBuf<KMaxDayNameAbb>
  2202. {
  2203. public:
  2204. __declspec(dllexport) TDayNameAbb();
  2205. __declspec(dllexport) TDayNameAbb(TDay aDay);
  2206. __declspec(dllexport) void Set(TDay aDay);
  2207. };
  2208. #line 1938
  2209. class TMonthName : public TBuf<KMaxMonthName>
  2210. {
  2211. public:
  2212. __declspec(dllexport) TMonthName();
  2213. __declspec(dllexport) TMonthName(TMonth aMonth);
  2214. __declspec(dllexport) void Set(TMonth aMonth);
  2215. };
  2216. #line 1961
  2217. class TMonthNameAbb : public TBuf<KMaxMonthNameAbb>
  2218. {
  2219. public:
  2220. __declspec(dllexport) TMonthNameAbb();
  2221. __declspec(dllexport) TMonthNameAbb(TMonth aMonth);
  2222. __declspec(dllexport) void Set(TMonth aMonth);
  2223. };
  2224. #line 1986
  2225. class TDateSuffix : public TBuf<KMaxSuffix>
  2226. {
  2227. public:
  2228. __declspec(dllexport) TDateSuffix();
  2229. __declspec(dllexport) TDateSuffix(TInt aDateSuffix);
  2230. __declspec(dllexport) void Set(TInt aDateSuffix);
  2231. };
  2232. #line 2010
  2233. class TAmPmName : public TBuf<KMaxAmPmName>
  2234. {
  2235. public:
  2236. __declspec(dllexport) TAmPmName();
  2237. __declspec(dllexport) TAmPmName(TAmPm aSelector);
  2238. __declspec(dllexport) void Set(TAmPm aSelector);
  2239. };
  2240. #line 2031
  2241. class TCurrencySymbol : public TBuf<KMaxCurrencySymbol>
  2242. {
  2243. public:
  2244. __declspec(dllexport) TCurrencySymbol();
  2245. __declspec(dllexport) void Set();
  2246. };
  2247. #line 2067
  2248. class TShortDateFormatSpec : public TBuf<KMaxShortDateFormatSpec>
  2249. {
  2250. public:
  2251. __declspec(dllexport) TShortDateFormatSpec();
  2252. __declspec(dllexport) void Set();
  2253. };
  2254. #line 2103
  2255. class TLongDateFormatSpec : public TBuf<KMaxLongDateFormatSpec>
  2256. {
  2257. public:
  2258. __declspec(dllexport) TLongDateFormatSpec();
  2259. __declspec(dllexport) void Set();
  2260. };
  2261. #line 2136
  2262. class TTimeFormatSpec : public TBuf<KMaxTimeFormatSpec>
  2263. {
  2264. public:
  2265. __declspec(dllexport) TTimeFormatSpec();
  2266. __declspec(dllexport) void Set();
  2267. };
  2268. #line 2156
  2269. class TLocale
  2270. {
  2271. public:
  2272. enum TNegativeCurrencyFormat
  2273. {
  2274. ELeadingMinusSign,
  2275. EInBrackets,
  2276. ETrailingMinusSign,
  2277. EInterveningMinusSign
  2278. };
  2279. enum
  2280. {
  2281. EFlagNegativeLoseSpace = 0x00000001,
  2282. EFlagNegativeCurrencySymbolOpposite=0x00000002
  2283. };
  2284. enum TDeviceTimeState
  2285. {
  2286. EDeviceUserTime,
  2287. ENITZNetworkTimeSync
  2288. };
  2289. public:
  2290. __declspec(dllexport) TLocale();
  2291. inline TLocale(TInt);
  2292. __declspec(dllexport) void Refresh();
  2293. __declspec(dllexport) TInt Set() const;
  2294. __declspec(dllexport) void FormatCurrency(TDes& aText, TInt aAmount);
  2295. __declspec(dllexport) void FormatCurrency(TDes& aText, TInt64 aAmount);
  2296. __declspec(dllexport) void FormatCurrency(TDes& aText, TDesOverflow& aOverflowHandler, TInt aAmount);
  2297. __declspec(dllexport) void FormatCurrency(TDes& aText, TDesOverflow& aOverflowHandler, TInt64 aAmount);
  2298. inline TInt CountryCode() const;
  2299. inline void SetCountryCode(TInt aCode);
  2300. inline TTimeIntervalSeconds UniversalTimeOffset() const;
  2301. inline TDateFormat DateFormat() const;
  2302. inline void SetDateFormat(TDateFormat aFormat);
  2303. inline TTimeFormat TimeFormat() const;
  2304. inline void SetTimeFormat(TTimeFormat aFormat);
  2305. inline TLocalePos CurrencySymbolPosition() const;
  2306. inline void SetCurrencySymbolPosition(TLocalePos aPos);
  2307. inline TBool CurrencySpaceBetween() const;
  2308. inline void SetCurrencySpaceBetween(TBool aSpace);
  2309. inline TInt CurrencyDecimalPlaces() const;
  2310. inline void SetCurrencyDecimalPlaces(TInt aPlaces);
  2311. inline TBool CurrencyNegativeInBrackets() const;
  2312. inline void SetCurrencyNegativeInBrackets(TBool aBool);
  2313.   inline TBool CurrencyTriadsAllowed() const;
  2314. inline void SetCurrencyTriadsAllowed(TBool aBool);
  2315. inline TChar ThousandsSeparator() const;
  2316. inline void SetThousandsSeparator(const TChar& aChar);
  2317. inline TChar DecimalSeparator() const;
  2318. inline void SetDecimalSeparator(const TChar& aChar);
  2319. inline TChar DateSeparator(TInt aIndex) const;
  2320. inline void SetDateSeparator(const TChar& aChar,TInt aIndex);
  2321. inline TChar TimeSeparator(TInt aIndex) const;
  2322. inline void SetTimeSeparator(const TChar& aChar,TInt aIndex);
  2323. inline TBool AmPmSpaceBetween() const;
  2324. inline void SetAmPmSpaceBetween(TBool aSpace);
  2325. inline TLocalePos AmPmSymbolPosition() const;
  2326. inline void SetAmPmSymbolPosition(TLocalePos aPos);
  2327. inline TUint DaylightSaving() const;
  2328. inline TBool QueryHomeHasDaylightSavingOn() const;
  2329. inline TDaylightSavingZone HomeDaylightSavingZone() const;
  2330. inline TUint WorkDays() const;
  2331. inline void SetWorkDays(TUint aMask);
  2332. inline TDay StartOfWeek() const;
  2333. inline void SetStartOfWeek(TDay aDay);
  2334. inline TClockFormat ClockFormat() const;
  2335. inline void SetClockFormat(TClockFormat aFormat);
  2336. inline TUnitsFormat UnitsGeneral() const;
  2337. inline void SetUnitsGeneral(TUnitsFormat aFormat);
  2338. inline TUnitsFormat UnitsDistanceShort() const;
  2339. inline void SetUnitsDistanceShort(TUnitsFormat aFormat);
  2340. inline TUnitsFormat UnitsDistanceLong() const;
  2341. inline void SetUnitsDistanceLong(TUnitsFormat aFormat);
  2342. inline TNegativeCurrencyFormat NegativeCurrencyFormat() const;
  2343. inline void SetNegativeCurrencyFormat(TNegativeCurrencyFormat aNegativeCurrencyFormat);
  2344. inline TBool NegativeLoseSpace() const;
  2345. inline void SetNegativeLoseSpace(TBool aBool);
  2346. inline TBool NegativeCurrencySymbolOpposite() const;
  2347. inline void SetNegativeCurrencySymbolOpposite(TBool aBool);
  2348. inline TLanguage LanguageDowngrade(TInt aIndex) const;
  2349. inline void SetLanguageDowngrade(TInt aIndex, TLanguage aLanguage);
  2350. inline TDigitType DigitType() const;
  2351. inline void SetDigitType(TDigitType aDigitType);
  2352. inline TDeviceTimeState DeviceTime() const;
  2353.   inline void SetDeviceTime(TDeviceTimeState aState);
  2354. void SetDefaults();
  2355. private:
  2356. friend class TExtendedLocale;
  2357. private:
  2358. TInt iCountryCode;
  2359. TTimeIntervalSeconds iUniversalTimeOffset;
  2360. TDateFormat iDateFormat;
  2361. TTimeFormat iTimeFormat;
  2362. TLocalePos iCurrencySymbolPosition;
  2363. TBool iCurrencySpaceBetween;
  2364. TInt iCurrencyDecimalPlaces;
  2365. TNegativeCurrencyFormat iNegativeCurrencyFormat;
  2366. TBool iCurrencyTriadsAllowed;
  2367. TChar iThousandsSeparator;
  2368. TChar iDecimalSeparator;
  2369. TChar iDateSeparator[KMaxDateSeparators];
  2370. TChar iTimeSeparator[KMaxTimeSeparators];
  2371. TLocalePos iAmPmSymbolPosition;
  2372. TBool iAmPmSpaceBetween;
  2373. TUint iDaylightSaving;
  2374. TDaylightSavingZone iHomeDaylightSavingZone;
  2375. TUint iWorkDays;
  2376. TDay iStartOfWeek;
  2377. TClockFormat iClockFormat;
  2378. TUnitsFormat iUnitsGeneral;
  2379. TUnitsFormat iUnitsDistanceShort;
  2380. TUnitsFormat iUnitsDistanceLong;
  2381. TUint iExtraNegativeCurrencyFormatFlags;
  2382. TUint16 iLanguageDowngrade[3];
  2383. TUint16 iSpare16;
  2384. TDigitType iDigitType;
  2385.   TDeviceTimeState iDeviceTimeState;
  2386.   TInt iSpare[0x1E];
  2387. };
  2388. const TUint KLocaleLanguageKey = 0x10208903;
  2389. const TUint KLocaleDataKey = 0x10208904;
  2390. const TUint KLocaleDataExtraKey = 0x10208905;
  2391. const TUint KLocaleTimeDateFormatKey = 0x10208907;
  2392. const TUint KLocaleDefaultCharSetKey = 0x10208908;
  2393. const TUint KLocalePreferredCharSetKey = 0x10208909;
  2394. enum TLocaleFunctions
  2395. {
  2396. FnDummy,
  2397. FnAmPmTable,
  2398. FnCharSet,
  2399. FnCollTable,
  2400. FnCurrencySymbol,
  2401. FnDateSuffixTable,
  2402. FnDayAbbTable,
  2403. FnDayTable,
  2404. FnFoldTable,
  2405. FnLanguage,
  2406. FnLocaleData,
  2407. FnLowerTable,
  2408. FnMonthAbbTable,
  2409. FnMonthTable,
  2410. FnMsgTable,
  2411. FnTypeTable,
  2412. FnUniCode,
  2413. FnUpperTable,
  2414. FnShortDateFormatSpec,
  2415. FnLongDateFormatSpec,
  2416. FnTimeFormatSpec,
  2417. FnFatUtilityFunctions
  2418. };
  2419. #line 2407
  2420. enum TLocaleAspect
  2421. {
  2422. ELocaleLanguageSettings = 0x01,
  2423. ELocaleCollateSetting = 0x02,
  2424. ELocaleLocaleSettings = 0x04,
  2425. ELocaleTimeDateSettings = 0x08,
  2426. };
  2427. struct SLocaleLanguage
  2428. {
  2429. TLanguage  iLanguage;
  2430. const TText* iDateSuffixTable;
  2431. const TText* iDayTable;
  2432. const TText* iDayAbbTable;
  2433. const TText* iMonthTable;
  2434. const TText* iMonthAbbTable;
  2435. const TText* iAmPmTable;
  2436. const TText16* const* iMsgTable;
  2437. };
  2438. struct SLocaleLocaleSettings
  2439. {
  2440. TText iCurrencySymbol[KMaxCurrencySymbol+1];
  2441. TAny* iLocaleExtraSettingsDllPtr;
  2442. };
  2443. struct SLocaleTimeDateFormat
  2444. {
  2445. TText iShortDateFormatSpec[KMaxShortDateFormatSpec+1];
  2446. TText iLongDateFormatSpec[KMaxLongDateFormatSpec+1];
  2447. TText iTimeFormatSpec[KMaxTimeFormatSpec+1];
  2448. TAny* iLocaleTimeDateFormatDllPtr;
  2449. };
  2450. struct LCharSet;
  2451. #line 2462
  2452. class TExtendedLocale
  2453. {
  2454. public:
  2455. __declspec(dllexport) TExtendedLocale();
  2456. __declspec(dllexport) void LoadSystemSettings();
  2457. __declspec(dllexport) TInt SaveSystemSettings();
  2458. __declspec(dllexport) TInt LoadLocale(const TDesC& aLocaleDllName);
  2459. #line 2488
  2460. __declspec(dllexport) TInt LoadLocaleAspect(TUint aAspectGroup, const TDesC& aLocaleDllName);
  2461. __declspec(dllexport) TInt SetCurrencySymbol(const TDesC &aSymbol);
  2462. __declspec(dllexport) TInt GetLocaleDllName(TLocaleAspect aLocaleDataSet, TDes& aDllName);
  2463. __declspec(dllexport) TCollationMethod GetPreferredCollationMethod(TInt index = 0) ;
  2464. inline TLocale* GetLocale();
  2465. private:
  2466. TInt DoLoadLocale(const TDesC& aLocaleDllName, TLibraryFunction* aExportList);
  2467. void DoUpdateLanguageSettings(TLibraryFunction* aExportList);
  2468. void DoUpdateLocaleSettings(TLibraryFunction* aExportList);
  2469. void DoUpdateTimeDateFormat(TLibraryFunction* aExportList);
  2470. private:
  2471. TLocale iLocale;
  2472. SLocaleLanguage iLanguageSettings;
  2473. SLocaleLocaleSettings iLocaleExtraSettings;
  2474. SLocaleTimeDateFormat iLocaleTimeDateFormat;
  2475. const LCharSet* iDefaultCharSet;
  2476. const LCharSet* iPreferredCharSet;
  2477. };
  2478. #line 2544
  2479. class TRect
  2480. {
  2481. public:
  2482. enum TUninitialized { EUninitialized };
  2483. TRect(TUninitialized) {}
  2484. __declspec(dllexport) TRect();
  2485. __declspec(dllexport) TRect(TInt aAx,TInt aAy,TInt aBx,TInt aBy);
  2486. __declspec(dllexport) TRect(const TPoint& aPointA,const TPoint& aPointB);
  2487. __declspec(dllexport) TRect(const TPoint& aPoint,const TSize& aSize);
  2488. __declspec(dllexport) TRect(const TSize& aSize);
  2489. __declspec(dllexport) TBool operator==(const TRect& aRect) const;
  2490. __declspec(dllexport) TBool operator!=(const TRect& aRect) const;
  2491. __declspec(dllexport) void SetRect(TInt aAx,TInt aAy,TInt aBx,TInt aBy);
  2492. __declspec(dllexport) void SetRect(const TPoint& aPointTL,const TPoint& aPointBR);
  2493. __declspec(dllexport) void SetRect(const TPoint& aPoint,const TSize& aSize);
  2494. __declspec(dllexport) void Move(TInt aDx,TInt aDy);
  2495. __declspec(dllexport) void Move(const TPoint& aOffset);
  2496. __declspec(dllexport) void Resize(TInt aDx,TInt aDy);
  2497. __declspec(dllexport) void Resize(const TSize& aSize);
  2498. __declspec(dllexport) void Shrink(TInt aDx,TInt aDy);
  2499. __declspec(dllexport) void Shrink(const TSize& aSize);
  2500. __declspec(dllexport) void Grow(TInt aDx,TInt aDy);
  2501. __declspec(dllexport) void Grow(const TSize& aSize);
  2502. __declspec(dllexport) void BoundingRect(const TRect& aRect);
  2503. __declspec(dllexport) TBool IsEmpty() const;
  2504. __declspec(dllexport) TBool Intersects(const TRect& aRect) const;
  2505. __declspec(dllexport) void Intersection(const TRect& aRect);
  2506. __declspec(dllexport) void Normalize();
  2507. __declspec(dllexport) TBool Contains(const TPoint& aPoint) const;
  2508. __declspec(dllexport) TSize Size() const;
  2509. __declspec(dllexport) TInt Width() const;
  2510. __declspec(dllexport) TInt Height() const;
  2511. __declspec(dllexport) TBool IsNormalized() const;
  2512. __declspec(dllexport) TPoint Center() const;
  2513. __declspec(dllexport) void SetSize(const TSize& aSize);
  2514. __declspec(dllexport) void SetWidth(TInt aWidth);
  2515. __declspec(dllexport) void SetHeight(TInt aHeight);
  2516. private:
  2517. void Adjust(TInt aDx,TInt aDy);
  2518. public:
  2519. TPoint iTl;
  2520. TPoint iBr;
  2521. };
  2522. #line 2646
  2523. class TRegion
  2524. {
  2525. public:
  2526. inline TInt Count() const;
  2527. inline const TRect* RectangleList() const;
  2528. inline TBool CheckError() const;
  2529. __declspec(dllexport) TBool IsEmpty() const;
  2530. __declspec(dllexport) TRect BoundingRect() const;
  2531. __declspec(dllexport) const TRect& operator[](TInt aIndex) const;
  2532. __declspec(dllexport) void Copy(const TRegion& aRegion);
  2533. __declspec(dllexport) void AddRect(const TRect& aRect);
  2534. __declspec(dllexport) void SubRect(const TRect& aRect,TRegion* aSubtractedRegion=0 );
  2535. __declspec(dllexport) void Offset(TInt aXoffset,TInt aYoffset);
  2536. __declspec(dllexport) void Offset(const TPoint& aOffset);
  2537. __declspec(dllexport) void Union(const TRegion& aRegion);
  2538. __declspec(dllexport) void Intersection(const TRegion& aRegion,const TRegion& aRegion2);
  2539. __declspec(dllexport) void Intersect(const TRegion& aRegion);
  2540. __declspec(dllexport) void SubRegion(const TRegion& aRegion,TRegion* aSubtractedRegion=0 );
  2541. __declspec(dllexport) void ClipRect(const TRect& aRect);
  2542. __declspec(dllexport) void Clear();
  2543. __declspec(dllexport) void Tidy();
  2544. __declspec(dllexport) TInt Sort();
  2545. __declspec(dllexport) TInt Sort(const TPoint& aOffset);
  2546. __declspec(dllexport) void ForceError();
  2547. __declspec(dllexport) TBool IsContainedBy(const TRect& aRect) const;
  2548. __declspec(dllexport) TBool Contains(const TPoint& aPoint) const;
  2549. protected:
  2550. __declspec(dllexport) TRect* RectangleListW();
  2551. __declspec(dllexport) TRegion(TInt aAllocedRects);
  2552. inline TRegion();
  2553. TBool SetListSize(TInt aCount);
  2554. void AppendRect(const TRect& aRect);
  2555. void DeleteRect(TRect* aRect);
  2556. void AppendRegion(TRegion& aRegion);
  2557. protected:
  2558. TInt iCount;
  2559. TBool iError;
  2560. TInt iAllocedRects;
  2561. protected:
  2562. enum {ERRegionBuf=0x40000000};
  2563. };
  2564. #line 2703
  2565. class RRegion : public TRegion
  2566. {
  2567. private:
  2568. enum {EDefaultGranularity=5};
  2569. protected:
  2570. __declspec(dllexport) RRegion(TInt aBuf,TInt aGran);
  2571. public:
  2572. __declspec(dllexport) RRegion();
  2573. __declspec(dllexport) RRegion(TInt aGran);
  2574. __declspec(dllexport) RRegion(const RRegion& aRegion);
  2575. __declspec(dllexport) RRegion(const TRect& aRect,TInt aGran=EDefaultGranularity);
  2576. __declspec(dllexport) RRegion(TInt aCount,TRect* aRectangleList,TInt aGran=EDefaultGranularity);
  2577. __declspec(dllexport) void Close();
  2578. __declspec(dllexport) void Destroy();
  2579. inline TInt CheckSpare() const;
  2580. private:
  2581. TInt iGranularity;
  2582. TRect* iRectangleList;
  2583. friend class TRegion;
  2584. };
  2585. #line 2744
  2586. template <TInt S>
  2587. class RRegionBuf : public RRegion
  2588. {
  2589. public:
  2590. inline RRegionBuf();
  2591. inline RRegionBuf(const RRegion& aRegion);
  2592. inline RRegionBuf(const RRegionBuf<S>& aRegion);
  2593. inline RRegionBuf(const TRect& aRect);
  2594. private:
  2595. TInt8 iRectangleBuf[S*sizeof(TRect)];
  2596. };
  2597. #line 2774
  2598. template <TInt S>
  2599. class TRegionFix : public TRegion
  2600. {
  2601. public:
  2602. inline TRegionFix();
  2603. inline TRegionFix(const TRect& aRect);
  2604. inline TRegionFix(const TRegionFix<S>& aRegion);
  2605. private:
  2606. TInt8 iRectangleBuf[S*sizeof(TRect)];
  2607. };
  2608. #line 2806
  2609. class TFindHandleBase
  2610. {
  2611. public:
  2612. __declspec(dllexport) TFindHandleBase();
  2613. __declspec(dllexport) TFindHandleBase(const TDesC& aMatch);
  2614. __declspec(dllexport) void Find(const TDesC& aMatch);
  2615. inline TInt Handle() const;
  2616. protected:
  2617. TInt NextObject(TFullName& aResult,TInt aObjectType);
  2618. private:
  2619. TInt iFindHandle;
  2620. TInt iSpare1;
  2621. TInt iSpare2;
  2622. TInt iSpare3;
  2623. TFullName iMatch;
  2624. };
  2625. #line 2859
  2626. class TFindSemaphore : public TFindHandleBase
  2627. {
  2628. public:
  2629. inline TFindSemaphore();
  2630. inline TFindSemaphore(const TDesC& aMatch);
  2631. __declspec(dllexport) TInt Next(TFullName& aResult);
  2632. };
  2633. #line 2895
  2634. class TFindMutex : public TFindHandleBase
  2635. {
  2636. public:
  2637. inline TFindMutex();
  2638. inline TFindMutex(const TDesC& aMatch);
  2639. __declspec(dllexport) TInt Next(TFullName& aResult);
  2640. };
  2641. #line 2922
  2642. class TFindChunk : public TFindHandleBase
  2643. {
  2644. public:
  2645. inline TFindChunk();
  2646. inline TFindChunk(const TDesC& aMatch);
  2647. __declspec(dllexport) TInt Next(TFullName& aResult);
  2648. };
  2649. #line 2952
  2650. class TFindThread : public TFindHandleBase
  2651. {
  2652. public:
  2653. inline TFindThread();
  2654. inline TFindThread(const TDesC& aMatch);
  2655. __declspec(dllexport) TInt Next(TFullName& aResult);
  2656. };
  2657. #line 2981
  2658. class TFindProcess : public TFindHandleBase
  2659. {
  2660. public:
  2661. inline TFindProcess();
  2662. inline TFindProcess(const TDesC& aMatch);
  2663. __declspec(dllexport) TInt Next(TFullName& aResult);
  2664. };
  2665. #line 3010
  2666. class TFindLogicalDevice : public TFindHandleBase
  2667. {
  2668. public:
  2669. inline TFindLogicalDevice();
  2670. inline TFindLogicalDevice(const TDesC& aMatch);
  2671. __declspec(dllexport) TInt Next(TFullName& aResult);
  2672. };
  2673. #line 3037
  2674. class TFindPhysicalDevice : public TFindHandleBase
  2675. {
  2676. public:
  2677. inline TFindPhysicalDevice();
  2678. inline TFindPhysicalDevice(const TDesC& aMatch);
  2679. __declspec(dllexport) TInt Next(TFullName& aResult);
  2680. };
  2681. #line 3065
  2682. class TFindServer : public TFindHandleBase
  2683. {
  2684. public:
  2685. inline TFindServer();
  2686. inline TFindServer(const TDesC& aMatch);
  2687. __declspec(dllexport) TInt Next(TFullName& aResult);
  2688. };
  2689. #line 3089
  2690. class TFindLibrary : public TFindHandleBase
  2691. {
  2692. public:
  2693. inline TFindLibrary();
  2694. inline TFindLibrary(const TDesC& aMatch);
  2695. __declspec(dllexport) TInt Next(TFullName& aResult);
  2696. };
  2697. #line 3114
  2698. class RDevice : public RHandleBase
  2699. {
  2700. public:
  2701. inline TInt Open(const TFindLogicalDevice& aFind,TOwnerType aType=EOwnerProcess);
  2702. __declspec(dllexport) TInt Open(const TDesC& aName,TOwnerType aType=EOwnerProcess);
  2703. __declspec(dllexport) void GetCaps(TDes8& aDes) const;
  2704. __declspec(dllexport) TBool QueryVersionSupported(const TVersion& aVer) const;
  2705. __declspec(dllexport) TBool IsAvailable(TInt aUnit, const TDesC* aPhysicalDevice, const TDesC8* anInfo) const;
  2706. };
  2707. #line 3154
  2708. class RTimer : public RHandleBase
  2709. {
  2710. public:
  2711. __declspec(dllexport) TInt CreateLocal();
  2712. __declspec(dllexport) void Cancel();
  2713. __declspec(dllexport) void After(TRequestStatus& aStatus,TTimeIntervalMicroSeconds32 anInterval);
  2714. __declspec(dllexport) void AfterTicks(TRequestStatus &aStatus, TInt aTicks);
  2715. __declspec(dllexport) void At(TRequestStatus& aStatus,const TTime& aTime);
  2716. __declspec(dllexport) void AtUTC(TRequestStatus& aStatus,const TTime& aUTCTime);
  2717. __declspec(dllexport) void Lock(TRequestStatus& aStatus,TTimerLockSpec aLock);
  2718. __declspec(dllexport) void Inactivity(TRequestStatus& aStatus, TTimeIntervalSeconds aSeconds);
  2719. __declspec(dllexport) void HighRes(TRequestStatus& aStatus,TTimeIntervalMicroSeconds32 anInterval);
  2720. };
  2721. #line 3179
  2722. class RLibrary : public RHandleBase
  2723. {
  2724. public:
  2725. __declspec(dllexport) void Close();
  2726. __declspec(dllexport) TInt Load(const TDesC& aFileName, const TUidType& aType);
  2727. __declspec(dllexport) TInt Load(const TDesC& aFileName, const TDesC& aPath=KNullDesC);
  2728. __declspec(dllexport) TInt Load(const TDesC& aFileName, const TDesC& aPath, const TUidType& aType);
  2729. __declspec(dllexport) TInt Load(const TDesC& aFileName, const TDesC& aPath, const TUidType& aType, TUint32 aModuleVersion);
  2730. __declspec(dllexport) TInt LoadRomLibrary(const TDesC& aFileName, const TDesC& aPath);
  2731. __declspec(dllexport) TLibraryFunction Lookup(TInt anOrdinal) const;
  2732. __declspec(dllexport) TUidType Type() const;
  2733. __declspec(dllexport) TFileName FileName() const;
  2734. __declspec(dllexport) TInt GetRamSizes(TInt& aCodeSize, TInt& aConstDataSize);
  2735. __declspec(dllexport) TInt Init();
  2736. public:
  2737. struct TInfo
  2738. {
  2739. TUint32 iModuleVersion;
  2740. TUidType iUids;
  2741. TSecurityInfo iSecurityInfo;
  2742. };
  2743. struct TInfoV2 : public TInfo
  2744. {
  2745. TUint8 iHardwareFloatingPoint;
  2746. TUint8 iSpare[7];
  2747. };
  2748. typedef TPckgBuf<TInfo> TInfoBuf;
  2749. typedef TPckgBuf<TInfoV2> TInfoBufV2;
  2750. enum TRequiredImageHeaderSize
  2751. {
  2752. KRequiredImageHeaderSize = KMaxTInt
  2753. };
  2754. __declspec(dllexport) static TInt GetInfoFromHeader(const TDesC8& aHeader, TDes8& aInfoBuf);
  2755. struct SInfo
  2756. {
  2757. TUint32 iModuleVersion;
  2758. TUidType iUids;
  2759. SSecurityInfo iS;
  2760. };
  2761. typedef TPckgBuf<SInfo> SInfoBuf;
  2762. __declspec(dllexport) static TInt GetInfo(const TDesC& aFileName, TDes8& aInfoBuf);
  2763. private:
  2764. TInt InitL();
  2765. };
  2766. #line 3292
  2767. class RCriticalSection : private RSemaphore
  2768. {
  2769. public:
  2770. __declspec(dllexport) RCriticalSection();
  2771. __declspec(dllexport) TInt CreateLocal(TOwnerType aType=EOwnerProcess);
  2772. __declspec(dllexport) void Close();
  2773. __declspec(dllexport) void Wait();
  2774. __declspec(dllexport) void Signal();
  2775. inline TBool IsBlocked() const;
  2776. private:
  2777. TInt iBlocked;
  2778. };
  2779. #line 3320
  2780. class RMutex : public RHandleBase
  2781. {
  2782. public:
  2783. inline TInt Open(const TFindMutex& aFind,TOwnerType aType=EOwnerProcess);
  2784. __declspec(dllexport) TInt CreateLocal(TOwnerType aType=EOwnerProcess);
  2785. __declspec(dllexport) TInt CreateGlobal(const TDesC& aName,TOwnerType aType=EOwnerProcess);
  2786. __declspec(dllexport) TInt OpenGlobal(const TDesC& aName,TOwnerType aType=EOwnerProcess);
  2787. __declspec(dllexport) TInt Open(RMessagePtr2 aMessage,TInt aParam,TOwnerType aType=EOwnerProcess);
  2788. __declspec(dllexport) TInt Open(TInt aArgumentIndex, TOwnerType aType=EOwnerProcess);
  2789. __declspec(dllexport) void Wait();
  2790. __declspec(dllexport) void Signal();
  2791. __declspec(dllexport) TBool IsHeld();
  2792. };
  2793. #line 3349
  2794. class RCondVar : public RHandleBase
  2795. {
  2796. public:
  2797. __declspec(dllexport) TInt CreateLocal(TOwnerType aType=EOwnerProcess);
  2798. __declspec(dllexport) TInt CreateGlobal(const TDesC& aName, TOwnerType aType=EOwnerProcess);
  2799. __declspec(dllexport) TInt OpenGlobal(const TDesC& aName, TOwnerType aType=EOwnerProcess);
  2800. __declspec(dllexport) TInt Open(RMessagePtr2 aMessage, TInt aParam, TOwnerType aType=EOwnerProcess);
  2801. __declspec(dllexport) TInt Open(TInt aArgumentIndex, TOwnerType aType=EOwnerProcess);
  2802. __declspec(dllexport) TInt Wait(RMutex& aMutex);
  2803. __declspec(dllexport) TInt TimedWait(RMutex& aMutex, TInt aTimeout);
  2804. __declspec(dllexport) void Signal();
  2805. __declspec(dllexport) void Broadcast();
  2806. };
  2807. class UserHeap;