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

Symbian

开发平台:

C/C++

  1. class PlatSec
  2. {
  3. public:
  4. #line 4509
  5. __declspec(dllexport) static TBool IsCapabilityEnforced(TCapability aCapability);
  6. enum TConfigSetting
  7. {
  8. EPlatSecEnforcement,
  9. EPlatSecDiagnotics,
  10. EPlatSecProcessIsolation,
  11. EPlatSecEnforceSysBin,
  12. };
  13. #line 4535
  14. __declspec(dllexport) static TInt ConfigSetting(TConfigSetting aSetting);
  15. #line 4544
  16. public:
  17. static inline TInt LoaderCapabilityViolation(const TDesC8& aImporterName, const TDesC8& aFileName, const SCapabilitySet& aMissingCaps);
  18. #line 4564
  19. static inline TInt LoaderCapabilityViolation(RProcess aLoadingProcess, const TDesC8& aFileName, const SCapabilitySet& aMissingCaps);
  20. static inline TInt CreatorCapabilityCheckFail(TCapability aCapability, const char* aContextText);
  21. static inline TInt CreatorCapabilityCheckFail(const TCapabilitySet& aMissingCaps, const char* aContextText);
  22. static inline TInt CapabilityCheckFail(TInt aHandle, TCapability aCapability, const char* aContextText);
  23. static inline TInt CapabilityCheckFail(TInt aHandle, const TCapabilitySet& aMissingCaps, const char* aContextText);
  24. static inline TInt PolicyCheckFail(TInt aHandle, const SSecurityInfo& aMissing, const char* aContextText);
  25. static inline TInt CapabilityCheckFail(RMessagePtr2 aMessage, TCapability aCapability, const char* aContextText);
  26. static inline TInt CapabilityCheckFail(RMessagePtr2 aMessage, const TCapabilitySet& aMissingCaps, const char* aContextText);
  27. static inline TInt PolicyCheckFail(RMessagePtr2 aMessage, const SSecurityInfo& aMissingCaps, const char* aContextText);
  28. static inline TInt PolicyCheckFail(RSessionBase aSession, const SSecurityInfo& aMissingCaps, const char* aContextText);
  29. static inline TInt CreatorPolicyCheckFail(const SSecurityInfo& aMissingCaps, const char* aContextText);
  30. static inline TInt CreatorCapabilityCheckFail(TCapability aCapability);
  31. static inline TInt CreatorCapabilityCheckFail(const TCapabilitySet& aMissingCaps);
  32. static inline TInt CapabilityCheckFail(TInt aHandle, TCapability aCapability);
  33. static inline TInt CapabilityCheckFail(TInt aHandle, const TCapabilitySet& aMissingCaps);
  34. static inline TInt PolicyCheckFail(TInt aHandle, const SSecurityInfo& aMissing);
  35. static inline TInt CapabilityCheckFail(RMessagePtr2 aMessage, TCapability aCapability);
  36. static inline TInt CapabilityCheckFail(RMessagePtr2 aMessage, const TCapabilitySet& aMissingCaps);
  37. static inline TInt PolicyCheckFail(RMessagePtr2 aMessage, const SSecurityInfo& aMissingCaps);
  38. static inline TInt CreatorPolicyCheckFail(const SSecurityInfo& aMissingCaps);
  39. private:
  40. __declspec(dllexport) static TInt EmitDiagnostic(TPlatSecDiagnostic& aDiagnostic, const char* aContextText);
  41. #line 4616
  42. public:
  43. __declspec(dllexport) static TInt EmitDiagnostic();
  44. };
  45. struct TEmulatorImageHeader
  46. {
  47. TUid iUids[KMaxCheckedUid];
  48. TProcessPriority iPriority;
  49. SSecurityInfo iS;
  50. TUint32 iSpare1;
  51. TUint32 iSpare2;
  52. TUint32 iModuleVersion;
  53. TUint32 iFlags;
  54. };
  55. #line 4648
  56. class TProcessMemoryInfo
  57. {
  58. public:
  59. TUint32 iCodeBase;
  60. TUint32 iCodeSize;
  61. TUint32 iConstDataBase;
  62. TUint32 iConstDataSize;
  63. TUint32 iInitialisedDataBase;
  64. TUint32 iInitialisedDataSize;
  65. TUint32 iUninitialisedDataBase;
  66. TUint32 iUninitialisedDataSize;
  67. };
  68. #line 4709
  69. typedef TProcessMemoryInfo TModuleMemoryInfo;
  70. class CBase;
  71. #line 4768
  72. template <class T>
  73. class TArray
  74. {
  75. public:
  76. inline TArray(TInt (*aCount)(const CBase* aPtr),const TAny*(*anAt)(const CBase* aPtr,TInt anIndex),const CBase* aPtr);
  77. inline TInt Count() const;
  78. inline const T& operator[](TInt anIndex) const;
  79. private:
  80. const CBase* iPtr;
  81. TInt (*iCount)(const CBase* aPtr);
  82. const TAny*(*iAt)(const CBase* aPtr,TInt anIndex);
  83. };
  84. #line 4796
  85. typedef TBool (*TGeneralIdentityRelation)(const TAny*, const TAny*);
  86. #line 4812
  87. typedef TInt (*TGeneralLinearOrder)(const TAny*, const TAny*);
  88. #line 4832
  89. template <class T>
  90. class TIdentityRelation
  91. {
  92. public:
  93. inline TIdentityRelation( TBool (*anIdentity)(const T&, const T&) );
  94. inline operator TGeneralIdentityRelation() const;
  95. private:
  96. TGeneralIdentityRelation iIdentity;
  97. };
  98. #line 4857
  99. class DefaultIdentity
  100. {
  101. public:
  102. __declspec(dllexport) static TBool Integer(const TInt&, const TInt&);
  103. __declspec(dllexport) static TBool Des8(const TDesC8&, const TDesC8&);
  104. __declspec(dllexport) static TBool Des16(const TDesC16&, const TDesC16&);
  105. };
  106. #line 4883
  107. template <class T>
  108. class TLinearOrder
  109. {
  110. public:
  111. inline TLinearOrder( TInt(*anOrder)(const T&, const T&) );
  112. inline operator TGeneralLinearOrder() const;
  113. private:
  114. TGeneralLinearOrder iOrder;
  115. };
  116. #line 4913
  117. enum TArrayFindMode
  118. {
  119. #line 4923
  120. EArrayFindMode_Any = 0,
  121. EArrayFindMode_First = 1,
  122. EArrayFindMode_Last = 2,
  123. EArrayFindMode_Limit = 3
  124. };
  125. #line 4954
  126. class RPointerArrayBase
  127. {
  128. protected:
  129. __declspec(dllexport) RPointerArrayBase();
  130. __declspec(dllexport) RPointerArrayBase(TInt aGranularity);
  131. __declspec(dllexport) RPointerArrayBase(TInt aMinGrowBy, TInt aFactor);
  132. __declspec(dllexport) void Close();
  133. __declspec(dllexport) TInt Count() const;
  134. inline void ZeroCount() {iCount=0;}
  135. inline TAny** Entries() {return iEntries;}
  136. __declspec(dllexport) TAny*& At(TInt anIndex) const;
  137. __declspec(dllexport) TInt Append(const TAny* anEntry);
  138. __declspec(dllexport) TInt Insert(const TAny* anEntry, TInt aPos);
  139. __declspec(dllexport) void Remove(TInt anIndex);
  140. __declspec(dllexport) void Compress();
  141. __declspec(dllexport) void Reset();
  142. __declspec(dllexport) TInt Find(const TAny* anEntry) const;
  143. __declspec(dllexport) TInt Find(const TAny* anEntry, TGeneralIdentityRelation anIdentity) const;
  144. __declspec(dllexport) TInt FindIsqSigned(TInt anEntry) const;
  145. __declspec(dllexport) TInt FindIsqUnsigned(TUint anEntry) const;
  146. __declspec(dllexport) TInt FindIsq(const TAny* anEntry, TGeneralLinearOrder anOrder) const;
  147. __declspec(dllexport) TInt FindIsqSigned(TInt anEntry, TInt aMode) const;
  148. __declspec(dllexport) TInt FindIsqUnsigned(TUint anEntry, TInt aMode) const;
  149. __declspec(dllexport) TInt FindIsq(const TAny* anEntry, TGeneralLinearOrder anOrder, TInt aMode) const;
  150. __declspec(dllexport) TInt InsertIsqSigned(TInt anEntry, TBool aAllowRepeats);
  151. __declspec(dllexport) TInt InsertIsqUnsigned(TUint anEntry, TBool aAllowRepeats);
  152. __declspec(dllexport) TInt InsertIsq(const TAny* anEntry, TGeneralLinearOrder anOrder, TBool aAllowRepeats);
  153. __declspec(dllexport) TInt BinarySearchSigned(TInt anEntry, TInt& anIndex) const;
  154. __declspec(dllexport) TInt BinarySearchUnsigned(TUint anEntry, TInt& anIndex) const;
  155. __declspec(dllexport) TInt BinarySearch(const TAny* anEntry, TInt& anIndex, TGeneralLinearOrder anOrder) const;
  156. __declspec(dllexport) TInt BinarySearchSigned(TInt anEntry, TInt& anIndex, TInt aMode) const;
  157. __declspec(dllexport) TInt BinarySearchUnsigned(TUint anEntry, TInt& anIndex, TInt aMode) const;
  158. __declspec(dllexport) TInt BinarySearch(const TAny* anEntry, TInt& anIndex, TGeneralLinearOrder anOrder, TInt aMode) const;
  159. __declspec(dllexport) RPointerArrayBase(TAny** aEntries, TInt aCount);
  160. __declspec(dllexport) void GranularCompress();
  161. __declspec(dllexport) TInt DoReserve(TInt aCount);
  162. __declspec(dllexport) void HeapSortSigned();
  163. __declspec(dllexport) void HeapSortUnsigned();
  164. __declspec(dllexport) void HeapSort(TGeneralLinearOrder anOrder);
  165. __declspec(dllexport) static TInt GetCount(const CBase* aPtr);
  166. __declspec(dllexport) static const TAny* GetElementPtr(const CBase* aPtr, TInt aIndex);
  167. private:
  168. TInt Grow();
  169. private:
  170. TInt iCount;
  171. TAny** iEntries;
  172. TInt iAllocated;
  173. TInt iGranularity;
  174. TInt iSpare1;
  175. TInt iSpare2;
  176. };
  177. #line 5024
  178. template <class T>
  179. class RPointerArray : private RPointerArrayBase
  180. {
  181. public:
  182. inline RPointerArray();
  183. inline explicit RPointerArray(TInt aGranularity);
  184. inline RPointerArray(TInt aMinGrowBy, TInt aFactor);
  185. inline void Close();
  186. inline TInt Count() const;
  187. inline T* const& operator[](TInt anIndex) const;
  188. inline T*& operator[](TInt anIndex);
  189. inline TInt Append(const T* anEntry);
  190. inline TInt Insert(const T* anEntry, TInt aPos);
  191. inline void Remove(TInt anIndex);
  192. inline void Compress();
  193. inline void Reset();
  194. void ResetAndDestroy();
  195. inline TInt Find(const T* anEntry) const;
  196. inline TInt Find(const T* anEntry, TIdentityRelation<T> anIdentity) const;
  197. inline TInt FindInAddressOrder(const T* anEntry) const;
  198. inline TInt FindInOrder(const T* anEntry, TLinearOrder<T> anOrder) const;
  199. inline TInt FindInAddressOrder(const T* anEntry, TInt& anIndex) const;
  200. inline TInt FindInOrder(const T* anEntry, TInt& anIndex, TLinearOrder<T> anOrder) const;
  201. template <class K>
  202. inline TInt FindInOrder(const K& aKey, TInt (*apfnCompare)(const K* k, const T& t)) const
  203. { return RPointerArrayBase::FindIsq((T*)&aKey,*(TLinearOrder<T> *)&apfnCompare); }
  204. inline TInt SpecificFindInAddressOrder(const T* anEntry, TInt aMode) const;
  205. inline TInt SpecificFindInOrder(const T* anEntry, TLinearOrder<T> anOrder, TInt aMode) const;
  206. inline TInt SpecificFindInAddressOrder(const T* anEntry, TInt& anIndex, TInt aMode) const;
  207. inline TInt SpecificFindInOrder(const T* anEntry, TInt& anIndex, TLinearOrder<T> anOrder, TInt aMode) const;
  208. inline TInt InsertInAddressOrder(const T* anEntry);
  209. inline TInt InsertInOrder(const T* anEntry, TLinearOrder<T> anOrder);
  210. inline TInt InsertInAddressOrderAllowRepeats(const T* anEntry);
  211. inline TInt InsertInOrderAllowRepeats(const T* anEntry, TLinearOrder<T> anOrder);
  212. inline void AppendL(const T* anEntry);
  213. inline void InsertL(const T* anEntry, TInt aPos);
  214. inline TInt FindL(const T* anEntry) const;
  215. inline TInt FindL(const T* anEntry, TIdentityRelation<T> anIdentity) const;
  216. inline TInt FindInAddressOrderL(const T* anEntry) const;
  217. inline TInt FindInOrderL(const T* anEntry, TLinearOrder<T> anOrder) const;
  218. inline void FindInAddressOrderL(const T* anEntry, TInt& anIndex) const;
  219. inline void FindInOrderL(const T* anEntry, TInt& anIndex, TLinearOrder<T> anOrder) const;
  220. inline TInt SpecificFindInAddressOrderL(const T* anEntry, TInt aMode) const;
  221. inline TInt SpecificFindInOrderL(const T* anEntry, TLinearOrder<T> anOrder, TInt aMode) const;
  222. inline void SpecificFindInAddressOrderL(const T* anEntry, TInt& anIndex, TInt aMode) const;
  223. inline void SpecificFindInOrderL(const T* anEntry, TInt& anIndex, TLinearOrder<T> anOrder, TInt aMode) const;
  224. inline void InsertInAddressOrderL(const T* anEntry);
  225. inline void InsertInOrderL(const T* anEntry, TLinearOrder<T> anOrder);
  226. inline void InsertInAddressOrderAllowRepeatsL(const T* anEntry);
  227. inline void InsertInOrderAllowRepeatsL(const T* anEntry, TLinearOrder<T> anOrder);
  228. inline RPointerArray(T** aEntries, TInt aCount);
  229. inline void GranularCompress();
  230. inline TInt Reserve(TInt aCount);
  231. inline void ReserveL(TInt aCount);
  232. inline void SortIntoAddressOrder();
  233. inline void Sort(TLinearOrder<T> anOrder);
  234. inline TArray<T*> Array() const;
  235. };
  236. #line 5099
  237. template<> class RPointerArray<TAny> : private RPointerArrayBase
  238. {
  239. public:
  240. inline RPointerArray();
  241. inline explicit RPointerArray(TInt aGranularity);
  242. inline RPointerArray(TInt aMinGrowBy, TInt aFactor);
  243. inline void Close();
  244. inline TInt Count() const;
  245. inline TAny* const& operator[](TInt anIndex) const;
  246. inline TAny*& operator[](TInt anIndex);
  247. inline TInt Append(const TAny* anEntry);
  248. inline TInt Insert(const TAny* anEntry, TInt aPos);
  249. inline void Remove(TInt anIndex);
  250. inline void Compress();
  251. inline void Reset();
  252. inline TInt Find(const TAny* anEntry) const;
  253. inline TInt FindInAddressOrder(const TAny* anEntry) const;
  254. inline TInt FindInAddressOrder(const TAny* anEntry, TInt& anIndex) const;
  255. inline TInt SpecificFindInAddressOrder(const TAny* anEntry, TInt aMode) const;
  256. inline TInt SpecificFindInAddressOrder(const TAny* anEntry, TInt& anIndex, TInt aMode) const;
  257. inline TInt InsertInAddressOrder(const TAny* anEntry);
  258. inline TInt InsertInAddressOrderAllowRepeats(const TAny* anEntry);
  259. inline void AppendL(const TAny* anEntry);
  260. inline void InsertL(const TAny* anEntry, TInt aPos);
  261. inline TInt FindL(const TAny* anEntry) const;
  262. inline TInt FindInAddressOrderL(const TAny* anEntry) const;
  263. inline void FindInAddressOrderL(const TAny* anEntry, TInt& anIndex) const;
  264. inline TInt SpecificFindInAddressOrderL(const TAny* anEntry, TInt aMode) const;
  265. inline void SpecificFindInAddressOrderL(const TAny* anEntry, TInt& anIndex, TInt aMode) const;
  266. inline void InsertInAddressOrderL(const TAny* anEntry);
  267. inline void InsertInAddressOrderAllowRepeatsL(const TAny* anEntry);
  268. inline RPointerArray(TAny** aEntries, TInt aCount);
  269. inline void GranularCompress();
  270. inline void SortIntoAddressOrder();
  271. inline TArray<TAny*> Array() const;
  272. };
  273. #line 5150
  274. class RArrayBase
  275. {
  276. protected:
  277. __declspec(dllexport) RArrayBase(TInt anEntrySize);
  278. __declspec(dllexport) RArrayBase(TInt anEntrySize, TInt aGranularity);
  279. __declspec(dllexport) RArrayBase(TInt anEntrySize, TInt aGranularity, TInt aKeyOffset);
  280. __declspec(dllexport) RArrayBase(TInt anEntrySize, TInt aMinGrowBy, TInt aKeyOffset, TInt aFactor);
  281. __declspec(dllexport) void Close();
  282. __declspec(dllexport) TInt Count() const;
  283. __declspec(dllexport) TAny* At(TInt anIndex) const;
  284. __declspec(dllexport) TInt Append(const TAny* anEntry);
  285. __declspec(dllexport) TInt Insert(const TAny* anEntry, TInt aPos);
  286. __declspec(dllexport) void Remove(TInt anIndex);
  287. __declspec(dllexport) void Compress();
  288. __declspec(dllexport) void Reset();
  289. __declspec(dllexport) TInt Find(const TAny* anEntry) const;
  290. __declspec(dllexport) TInt Find(const TAny* anEntry, TGeneralIdentityRelation anIdentity) const;
  291. __declspec(dllexport) TInt FindIsqSigned(const TAny* anEntry) const;
  292. __declspec(dllexport) TInt FindIsqUnsigned(const TAny* anEntry) const;
  293. __declspec(dllexport) TInt FindIsq(const TAny* anEntry, TGeneralLinearOrder anOrder) const;
  294. __declspec(dllexport) TInt FindIsqSigned(const TAny* anEntry, TInt aMode) const;
  295. __declspec(dllexport) TInt FindIsqUnsigned(const TAny* anEntry, TInt aMode) const;
  296. __declspec(dllexport) TInt FindIsq(const TAny* anEntry, TGeneralLinearOrder anOrder, TInt aMode) const;
  297. __declspec(dllexport) TInt InsertIsqSigned(const TAny* anEntry, TBool aAllowRepeats);
  298. __declspec(dllexport) TInt InsertIsqUnsigned(const TAny* anEntry, TBool aAllowRepeats);
  299. __declspec(dllexport) TInt InsertIsq(const TAny* anEntry, TGeneralLinearOrder anOrder, TBool aAllowRepeats);
  300. __declspec(dllexport) TInt BinarySearchSigned(const TAny* anEntry, TInt& anIndex) const;
  301. __declspec(dllexport) TInt BinarySearchUnsigned(const TAny* anEntry, TInt& anIndex) const;
  302. __declspec(dllexport) TInt BinarySearch(const TAny* anEntry, TInt& anIndex, TGeneralLinearOrder anOrder) const;
  303. __declspec(dllexport) TInt BinarySearchSigned(const TAny* anEntry, TInt& anIndex, TInt aMode) const;
  304. __declspec(dllexport) TInt BinarySearchUnsigned(const TAny* anEntry, TInt& anIndex, TInt aMode) const;
  305. __declspec(dllexport) TInt BinarySearch(const TAny* anEntry, TInt& anIndex, TGeneralLinearOrder anOrder, TInt aMode) const;
  306. __declspec(dllexport) RArrayBase(TInt aEntrySize,TAny* aEntries, TInt aCount);
  307. __declspec(dllexport) void GranularCompress();
  308. __declspec(dllexport) TInt DoReserve(TInt aCount);
  309. __declspec(dllexport) void HeapSortSigned();
  310. __declspec(dllexport) void HeapSortUnsigned();
  311. __declspec(dllexport) void HeapSort(TGeneralLinearOrder anOrder);
  312. __declspec(dllexport) static TInt GetCount(const CBase* aPtr);
  313. __declspec(dllexport) static const TAny* GetElementPtr(const CBase* aPtr, TInt aIndex);
  314. private:
  315. TInt Grow();
  316. private:
  317. TInt iCount;
  318. TAny* iEntries;
  319. TInt iEntrySize;
  320. TInt iKeyOffset;
  321. TInt iAllocated;
  322. TInt iGranularity;
  323. TInt iSpare1;
  324. TInt iSpare2;
  325. };
  326. #line 5244
  327. template <class T>
  328. class RArray : private RArrayBase
  329. {
  330. public:
  331. inline RArray();
  332. inline explicit RArray(TInt aGranularity);
  333. inline RArray(TInt aGranularity, TInt aKeyOffset);
  334. inline RArray(TInt aMinGrowBy, TInt aKeyOffset, TInt aFactor);
  335. inline void Close();
  336. inline TInt Count() const;
  337. inline const T& operator[](TInt anIndex) const;
  338. inline T& operator[](TInt anIndex);
  339. inline TInt Append(const T& anEntry);
  340. inline TInt Insert(const T& anEntry, TInt aPos);
  341. inline void Remove(TInt anIndex);
  342. inline void Compress();
  343. inline void Reset();
  344. inline TInt Find(const T& anEntry) const;
  345. inline TInt Find(const T& anEntry, TIdentityRelation<T> anIdentity) const;
  346. inline TInt FindInSignedKeyOrder(const T& anEntry) const;
  347. inline TInt FindInUnsignedKeyOrder(const T& anEntry) const;
  348. inline TInt FindInOrder(const T& anEntry, TLinearOrder<T> anOrder) const;
  349. inline TInt FindInSignedKeyOrder(const T& anEntry, TInt& anIndex) const;
  350. inline TInt FindInUnsignedKeyOrder(const T& anEntry, TInt& anIndex) const;
  351. inline TInt FindInOrder(const T& anEntry, TInt& anIndex, TLinearOrder<T> anOrder) const;
  352. template <class K>
  353. inline TInt FindInOrder(const K& aKey, TInt (*apfnCompare)(const K* k, const T& t)) const
  354. { return RArrayBase::FindIsq((T*)&aKey,*(TLinearOrder<T> *)&apfnCompare); }
  355. inline TInt SpecificFindInSignedKeyOrder(const T& anEntry, TInt aMode) const;
  356. inline TInt SpecificFindInUnsignedKeyOrder(const T& anEntry, TInt aMode) const;
  357. inline TInt SpecificFindInOrder(const T& anEntry, TLinearOrder<T> anOrder, TInt aMode) const;
  358. inline TInt SpecificFindInSignedKeyOrder(const T& anEntry, TInt& anIndex, TInt aMode) const;
  359. inline TInt SpecificFindInUnsignedKeyOrder(const T& anEntry, TInt& anIndex, TInt aMode) const;
  360. inline TInt SpecificFindInOrder(const T& anEntry, TInt& anIndex, TLinearOrder<T> anOrder, TInt aMode) const;
  361. inline TInt InsertInSignedKeyOrder(const T& anEntry);
  362. inline TInt InsertInUnsignedKeyOrder(const T& anEntry);
  363. inline TInt InsertInOrder(const T& anEntry, TLinearOrder<T> anOrder);
  364. inline TInt InsertInSignedKeyOrderAllowRepeats(const T& anEntry);
  365. inline TInt InsertInUnsignedKeyOrderAllowRepeats(const T& anEntry);
  366. inline TInt InsertInOrderAllowRepeats(const T& anEntry, TLinearOrder<T> anOrder);
  367. inline void AppendL(const T& anEntry);
  368. inline void InsertL(const T& anEntry, TInt aPos);
  369. inline TInt FindL(const T& anEntry) const;
  370. inline TInt FindL(const T& anEntry, TIdentityRelation<T> anIdentity) const;
  371. inline TInt FindInSignedKeyOrderL(const T& anEntry) const;
  372. inline TInt FindInUnsignedKeyOrderL(const T& anEntry) const;
  373. inline TInt FindInOrderL(const T& anEntry, TLinearOrder<T> anOrder) const;
  374. inline void FindInSignedKeyOrderL(const T& anEntry, TInt& anIndex) const;
  375. inline void FindInUnsignedKeyOrderL(const T& anEntry, TInt& anIndex) const;
  376. inline void FindInOrderL(const T& anEntry, TInt& anIndex, TLinearOrder<T> anOrder) const;
  377. inline TInt SpecificFindInSignedKeyOrderL(const T& anEntry, TInt aMode) const;
  378. inline TInt SpecificFindInUnsignedKeyOrderL(const T& anEntry, TInt aMode) const;
  379. inline TInt SpecificFindInOrderL(const T& anEntry, TLinearOrder<T> anOrder, TInt aMode) const;
  380. inline void SpecificFindInSignedKeyOrderL(const T& anEntry, TInt& anIndex, TInt aMode) const;
  381. inline void SpecificFindInUnsignedKeyOrderL(const T& anEntry, TInt& anIndex, TInt aMode) const;
  382. inline void SpecificFindInOrderL(const T& anEntry, TInt& anIndex, TLinearOrder<T> anOrder, TInt aMode) const;
  383. inline void InsertInSignedKeyOrderL(const T& anEntry);
  384. inline void InsertInUnsignedKeyOrderL(const T& anEntry);
  385. inline void InsertInOrderL(const T& anEntry, TLinearOrder<T> anOrder);
  386. inline void InsertInSignedKeyOrderAllowRepeatsL(const T& anEntry);
  387. inline void InsertInUnsignedKeyOrderAllowRepeatsL(const T& anEntry);
  388. inline void InsertInOrderAllowRepeatsL(const T& anEntry, TLinearOrder<T> anOrder);
  389. inline RArray(TInt aEntrySize,T* aEntries, TInt aCount);
  390. inline void GranularCompress();
  391. inline TInt Reserve(TInt aCount);
  392. inline void ReserveL(TInt aCount);
  393. inline void SortSigned();
  394. inline void SortUnsigned();
  395. inline void Sort(TLinearOrder<T> anOrder);
  396. inline TArray<T> Array() const;
  397. };
  398. #line 5331
  399. template<> class RArray<TInt> : private RPointerArrayBase
  400. {
  401. public:
  402. inline RArray();
  403. inline explicit RArray(TInt aGranularity);
  404. inline RArray(TInt aMinGrowBy, TInt aFactor);
  405. inline void Close();
  406. inline TInt Count() const;
  407. inline const TInt& operator[](TInt anIndex) const;
  408. inline TInt& operator[](TInt anIndex);
  409. inline TInt Append(TInt anEntry);
  410. inline TInt Insert(TInt anEntry, TInt aPos);
  411. inline void Remove(TInt anIndex);
  412. inline void Compress();
  413. inline void Reset();
  414. inline TInt Find(TInt anEntry) const;
  415. inline TInt FindInOrder(TInt anEntry) const;
  416. inline TInt FindInOrder(TInt anEntry, TInt& anIndex) const;
  417. inline TInt SpecificFindInOrder(TInt anEntry, TInt aMode) const;
  418. inline TInt SpecificFindInOrder(TInt anEntry, TInt& anIndex, TInt aMode) const;
  419. inline TInt InsertInOrder(TInt anEntry);
  420. inline TInt InsertInOrderAllowRepeats(TInt anEntry);
  421. inline void AppendL(TInt anEntry);
  422. inline void InsertL(TInt anEntry, TInt aPos);
  423. inline TInt FindL(TInt anEntry) const;
  424. inline TInt FindInOrderL(TInt anEntry) const;
  425. inline void FindInOrderL(TInt anEntry, TInt& anIndex) const;
  426. inline TInt SpecificFindInOrderL(TInt anEntry, TInt aMode) const;
  427. inline void SpecificFindInOrderL(TInt anEntry, TInt& anIndex, TInt aMode) const;
  428. inline void InsertInOrderL(TInt anEntry);
  429. inline void InsertInOrderAllowRepeatsL(TInt anEntry);
  430. inline RArray(TInt* aEntries, TInt aCount);
  431. inline void GranularCompress();
  432. inline TInt Reserve(TInt aCount);
  433. inline void ReserveL(TInt aCount);
  434. inline void Sort();
  435. inline TArray<TInt> Array() const;
  436. };
  437. #line 5387
  438. template<> class RArray<TUint> : private RPointerArrayBase
  439. {
  440. public:
  441. inline RArray();
  442. inline explicit RArray(TInt aGranularity);
  443. inline RArray(TInt aMinGrowBy, TInt aFactor);
  444. inline void Close();
  445. inline TInt Count() const;
  446. inline const TUint& operator[](TInt anIndex) const;
  447. inline TUint& operator[](TInt anIndex);
  448. inline TInt Append(TUint anEntry);
  449. inline TInt Insert(TUint anEntry, TInt aPos);
  450. inline void Remove(TInt anIndex);
  451. inline void Compress();
  452. inline void Reset();
  453. inline TInt Find(TUint anEntry) const;
  454. inline TInt FindInOrder(TUint anEntry) const;
  455. inline TInt FindInOrder(TUint anEntry, TInt& anIndex) const;
  456. inline TInt SpecificFindInOrder(TUint anEntry, TInt aMode) const;
  457. inline TInt SpecificFindInOrder(TUint anEntry, TInt& anIndex, TInt aMode) const;
  458. inline TInt InsertInOrder(TUint anEntry);
  459. inline TInt InsertInOrderAllowRepeats(TUint anEntry);
  460. inline void AppendL(TUint anEntry);
  461. inline void InsertL(TUint anEntry, TInt aPos);
  462. inline TInt FindL(TUint anEntry) const;
  463. inline TInt FindInOrderL(TUint anEntry) const;
  464. inline void FindInOrderL(TUint anEntry, TInt& anIndex) const;
  465. inline TInt SpecificFindInOrderL(TUint anEntry, TInt aMode) const;
  466. inline void SpecificFindInOrderL(TUint anEntry, TInt& anIndex, TInt aMode) const;
  467. inline void InsertInOrderL(TUint anEntry);
  468. inline void InsertInOrderAllowRepeatsL(TUint anEntry);
  469. inline RArray(TUint* aEntries, TInt aCount);
  470. inline void GranularCompress();
  471. inline TInt Reserve(TInt aCount);
  472. inline void ReserveL(TInt aCount);
  473. inline void Sort();
  474. inline TArray<TUint> Array() const;
  475. };
  476. #line 5822
  477. extern TAny* operator new(TUint aSize) throw() ;
  478. extern TAny* operator new(TUint aSize,TUint anExtraSize) throw() ;
  479. extern void operator delete(TAny* aPtr) throw() ;
  480. extern TAny* operator new[](TUint aSize) throw() ;
  481. extern void operator delete[](TAny* aPtr) throw() ;
  482. inline TAny* operator new(TUint aSize, TAny* aBase) throw() ;
  483. inline TAny* operator new[](TUint aSize, TAny* aBase) throw() ;
  484. inline void operator delete(TAny* aPtr, TAny* aBase) throw() ;
  485. inline void operator delete[](TAny* aPtr, TAny* aBase) throw() ;
  486. #line 5886
  487. TBool operator==(TTrue,volatile const TBool);
  488. TBool operator==(volatile const TBool,TTrue);
  489. TBool operator!=(TTrue,volatile const TBool);
  490. TBool operator!=(volatile const TBool,TTrue);
  491. #line 5928
  492. class TIpcArgs
  493. {
  494. public:
  495. enum TArgType
  496. {
  497. EUnspecified = 0,
  498. EHandle = 1,
  499. EFlagDes = 4,
  500. EFlagConst = 2,
  501. EFlag16Bit = 1,
  502. EDes8 = EFlagDes,
  503. EDes16 = EFlagDes|EFlag16Bit,
  504. EDesC8 = EFlagDes|EFlagConst,
  505. EDesC16 = EFlagDes|EFlagConst|EFlag16Bit,
  506. };
  507. enum {
  508.      KBitsPerType=3
  509.      };
  510. enum TNothing {
  511. #line 5976
  512.               ENothing
  513.               };
  514. public:
  515. inline TIpcArgs()
  516. :iFlags(0)
  517. {}
  518. #line 5998
  519. template <class T0>
  520. inline explicit TIpcArgs(T0 a0)
  521. {
  522. Assign(iArgs[0],a0);
  523. iFlags=(Type(a0)<<(0*KBitsPerType));
  524. }
  525. #line 6015
  526. template <class T0,class T1>
  527. inline TIpcArgs(T0 a0,T1 a1)
  528. {
  529. Assign(iArgs[0],a0);
  530. Assign(iArgs[1],a1);
  531. iFlags=(Type(a0)<<(0*KBitsPerType))|(Type(a1)<<(1*KBitsPerType));
  532. }
  533. #line 6035
  534. template <class T0,class T1,class T2>
  535. inline TIpcArgs(T0 a0,T1 a1,T2 a2)
  536. {
  537. Assign(iArgs[0],a0);
  538. Assign(iArgs[1],a1);
  539. Assign(iArgs[2],a2);
  540. iFlags=(Type(a0)<<(0*KBitsPerType))|(Type(a1)<<(1*KBitsPerType))|(Type(a2)<<(2*KBitsPerType));
  541. }
  542. #line 6058
  543. template <class T0,class T1,class T2,class T3>
  544. inline TIpcArgs(T0 a0,T1 a1,T2 a2,T3 a3)
  545. {
  546. Assign(iArgs[0],a0);
  547. Assign(iArgs[1],a1);
  548. Assign(iArgs[2],a2);
  549. Assign(iArgs[3],a3);
  550. iFlags=(Type(a0)<<(0*KBitsPerType))|(Type(a1)<<(1*KBitsPerType))|(Type(a2)<<(2*KBitsPerType))|(Type(a3)<<(3*KBitsPerType));
  551. }
  552. inline void Set(TInt aIndex,TNothing);
  553. inline void Set(TInt aIndex,TInt aValue);
  554. inline void Set(TInt aIndex,const TAny* aValue);
  555. inline void Set(TInt aIndex,RHandleBase aValue);
  556. inline void Set(TInt aIndex,const TDesC8* aValue);
  557. inline void Set(TInt aIndex,const TDesC16* aValue);
  558. inline void Set(TInt aIndex,TDes8* aValue);
  559. inline void Set(TInt aIndex,TDes16* aValue);
  560. private:
  561. inline static TArgType Type(TNothing);
  562. inline static TArgType Type(TInt);
  563. inline static TArgType Type(const TAny*);
  564. inline static TArgType Type(RHandleBase aValue);
  565. inline static TArgType Type(const TDesC8*);
  566. inline static TArgType Type(const TDesC16*);
  567. inline static TArgType Type(TDes8*);
  568. inline static TArgType Type(TDes16*);
  569. inline static void Assign(TInt&,TNothing);
  570. inline static void Assign(TInt& aArg,TInt aValue);
  571. inline static void Assign(TInt& aArg,const TAny* aValue);
  572. inline static void Assign(TInt& aArg,RHandleBase aValue);
  573. inline static void Assign(TInt& aArg,const TDesC8* aValue);
  574. inline static void Assign(TInt& aArg,const TDesC16* aValue);
  575. inline static void Assign(TInt& aArg,TDes8* aValue);
  576. inline static void Assign(TInt& aArg,TDes16* aValue);
  577. public:
  578. TInt iArgs[KMaxMessageArguments];
  579. #line 6123
  580. TInt iFlags;
  581. };
  582. struct SInt64
  583. {
  584. public:
  585. inline SInt64();
  586. inline SInt64(Int64 a);
  587. inline SInt64& operator=(Int64 a);
  588. inline operator Int64() const;
  589. public:
  590. TUint32 iData[2];
  591. };
  592. struct SUint64
  593. {
  594. public:
  595. inline SUint64();
  596. inline SUint64(Uint64 a);
  597. inline SUint64& operator=(Uint64 a);
  598. inline operator Uint64() const;
  599. public:
  600. TUint32 iData[2];
  601. };
  602. struct SDouble
  603. {
  604. public:
  605. inline SDouble();
  606. inline SDouble(TReal a);
  607. inline SDouble& operator=(TReal a);
  608. inline operator TReal() const;
  609. public:
  610. TUint32 iData[2];
  611. };
  612. #line 6181
  613. class TThreadStackInfo
  614. {
  615. public:
  616. TLinAddr iBase;
  617. TLinAddr iLimit;
  618. TLinAddr iExpandLimit;
  619. };
  620. #line 6214
  621. class XLeaveException
  622. {
  623. public:
  624. inline XLeaveException() {}
  625. inline XLeaveException(TInt aReason) {iR = aReason;}
  626. inline TInt Reason() const {return iR;}
  627. __declspec(dllexport) TInt GetReason() const;
  628. private:
  629. #line 6230
  630. private:
  631. TAny* iVtable;
  632. TInt iR;
  633. };
  634. namespace std {
  635.   bool uncaught_exception(void);
  636.   void terminate(void);
  637.   void unexpected(void);
  638.   typedef void (*terminate_handler)();
  639.   terminate_handler set_terminate(terminate_handler h) throw();
  640.   typedef void (*unexpected_handler)();
  641.   unexpected_handler set_unexpected(unexpected_handler h) throw();
  642. }
  643. class __UnknownWindowsType1;
  644. class __UnknownWindowsType2;
  645. class TWin32SEHTrap;
  646. typedef TUint32 (TWin32SEHExceptionHandler)(__UnknownWindowsType1* aExceptionRecord, TWin32SEHTrap* aRegistrationRecord, __UnknownWindowsType2* aContext);
  647. class TWin32SEHTrap
  648. {
  649. private:
  650.     TWin32SEHTrap(TWin32SEHTrap const &);
  651.     TWin32SEHTrap& operator=(TWin32SEHTrap const &);
  652. #line 6297
  653. public:
  654. __declspec(dllexport) TWin32SEHTrap();
  655. public:
  656. __declspec(dllexport) void Trap();
  657. __declspec(dllexport) void UnTrap();
  658. private:
  659. static TUint32 ExceptionHandler(__UnknownWindowsType1* aException, TWin32SEHTrap* aRegistrationRecord, __UnknownWindowsType2* aContext);
  660.     TWin32SEHTrap* iPrevExceptionRegistrationRecord;
  661. TWin32SEHExceptionHandler* iExceptionHandler;
  662. private:
  663. TUint32 iPadding[254];
  664. };
  665. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\e32cmn.inl" /* stack depth 2 */
  666. #line 9
  667. inline TAny* operator new(TUint , TAny* aBase) throw()
  668. {return aBase;}
  669. inline void operator delete(TAny* , TAny* ) throw()
  670. {}
  671. inline TAny* operator new[](TUint , TAny* aBase) throw()
  672. {return aBase;}
  673. inline void operator delete[](TAny* , TAny* ) throw()
  674. {}
  675. inline RAllocator::RAllocator()
  676. {
  677. iAccessCount=1;
  678. iHandleCount=0;
  679. iHandles=0;
  680. iFlags=0;
  681. iCellCount=0;
  682. iTotalAllocSize=0;
  683. }
  684. inline void RAllocator::__DbgMarkCheck(TBool aCountAll, TInt aCount, const TUint8* aFileName, TInt aLineNum)
  685. {__DbgMarkCheck(aCountAll, aCount, TPtrC8(aFileName), aLineNum);}
  686. inline RHeap::RHeap()
  687. {}
  688. inline TInt RHeap::MaxLength() const
  689. {return iMaxLength;}
  690. inline void RHeap::operator delete(TAny*, TAny*)
  691. {}
  692. inline TUint8* RHeap::Base() const
  693. #line 73
  694. {return iBase;}
  695. inline TInt RHeap::Size() const
  696. #line 89
  697. {return iTop-iBase;}
  698. inline TInt RHeap::Align(TInt a) const
  699. {return (((a)+( iAlign)-1)&~(( iAlign)-1)) ;}
  700. inline const TAny* RHeap::Align(const TAny* a) const
  701. {return (const TAny*)((((TLinAddr)a)+( iAlign)-1)&~(( iAlign)-1)) ;}
  702. inline TBool RHeap::IsLastCell(const SCell* aCell) const
  703. {return (((TUint8*)aCell) + aCell->len) == iTop;}
  704. inline void RHeap::Lock() const
  705. {((RFastLock&)iLock).Wait();}
  706. inline void RHeap::Unlock() const
  707. {((RFastLock&)iLock).Signal();}
  708. template <class T>
  709. inline TRefByValue<T>::TRefByValue(T &aRef)
  710. : iRef(aRef)
  711. {}
  712. template <class T>
  713. inline TRefByValue<T>::operator T &()
  714. {return(iRef);}
  715. #line 201
  716. inline TInt RBusLogicalChannel::DoCreate(const TDesC& aDevice, const TVersion& aVer, TInt aUnit, const TDesC* aDriver, const TDesC8* aInfo, TOwnerType aType, TBool aTransferable)
  717. { return DoCreate(aDevice, aVer, aUnit, aDriver, aInfo, (TInt)aType | (aTransferable?KCreateProtectedObject:0) ); }
  718. inline TChar::TChar()
  719. {}
  720. inline TChar::TChar(TUint aChar)
  721. : iChar(aChar)
  722. {}
  723. inline TChar& TChar::operator-=(TUint aChar)
  724. #line 241
  725. {iChar-=aChar;return(*this);}
  726. inline TChar& TChar::operator+=(TUint aChar)
  727. #line 256
  728. {iChar+=aChar;return(*this);}
  729. inline TChar TChar::operator-(TUint aChar)
  730. #line 273
  731. {return(iChar-aChar);}
  732. inline TChar TChar::operator+(TUint aChar)
  733. #line 288
  734. {return(iChar+aChar);}
  735. inline TChar::operator TUint() const
  736. {return(iChar);}
  737. inline TBool TDesC8::operator<(const TDesC8 &aDes) const
  738. #line 320
  739. {return(Compare(aDes)<0);}
  740. inline TBool TDesC8::operator<=(const TDesC8 &aDes) const
  741. #line 339
  742. {return(Compare(aDes)<=0);}
  743. inline TBool TDesC8::operator>(const TDesC8 &aDes) const
  744. #line 358
  745. {return(Compare(aDes)>0);}
  746. inline TBool TDesC8::operator>=(const TDesC8 &aDes) const
  747. #line 377
  748. {return(Compare(aDes)>=0);}
  749. inline TBool TDesC8::operator==(const TDesC8 &aDes) const
  750. #line 396
  751. {return(Compare(aDes)==0);}
  752. inline TBool TDesC8::operator!=(const TDesC8 &aDes) const
  753. #line 415
  754. {return(Compare(aDes)!=0);}
  755. inline const TUint8 &TDesC8::operator[](TInt anIndex) const
  756. #line 433
  757. {return(AtC(anIndex));}
  758. inline TInt TDesC8::Length() const
  759. {return(iLength&KMaskDesLength8);}
  760. inline TInt TDesC8::Size() const
  761. {return(Length());}
  762. inline void TDesC8::DoSetLength(TInt aLength)
  763. {iLength=(iLength&(~KMaskDesLength8))|aLength;}
  764. inline void TPtrC8::Set(const TUint8 *aBuf,TInt aLength)
  765. #line 483
  766. {new(this) TPtrC8(aBuf,aLength);}
  767. inline void TPtrC8::Set(const TDesC8 &aDes)
  768. {new(this) TPtrC8(aDes);}
  769. inline void TPtrC8::Set(const TPtrC8& aPtr)
  770. #line 510
  771. {new(this) TPtrC8(aPtr);}
  772. inline TPtr8 TBufCBase8::DoDes(TInt aMaxLength)
  773. {return TPtr8(*this,aMaxLength);}
  774. template <TInt S>
  775. inline TBufC8<S>::TBufC8()
  776. : TBufCBase8()
  777. #line 540
  778. {}
  779. template <TInt S>
  780. inline TBufC8<S>::TBufC8(const TUint8 *aString)
  781. : TBufCBase8(aString,S)
  782. #line 564
  783. {}
  784. template <TInt S>
  785. inline TBufC8<S>::TBufC8(const TDesC8 &aDes)
  786. : TBufCBase8(aDes,S)
  787. #line 588
  788. {}
  789. template <TInt S>
  790. inline TBufC8<S> &TBufC8<S>::operator=(const TUint8 *aString)
  791. #line 607
  792. {Copy(aString,S);return(*this);}
  793. template <TInt S>
  794. inline TBufC8<S> &TBufC8<S>::operator=(const TDesC8 &aDes)
  795. #line 626
  796. {Copy(aDes,S);return(*this);}
  797. template <TInt S>
  798. inline TPtr8 TBufC8<S>::Des()
  799. #line 656
  800. {return DoDes(S);}
  801. inline HBufC8 &HBufC8::operator=(const HBufC8 &aLcb)
  802. #line 681
  803. {return *this=static_cast<const TDesC8&>(aLcb);}
  804. #line 710
  805. inline void RBuf8::CreateL(RReadStream &aStream,TInt aMaxLength)
  806. {
  807. Assign(HBufC8::NewL(aStream,aMaxLength));
  808. }
  809. inline TDes8 &TDes8::operator=(const TUint8 *aString)
  810. #line 733
  811.     {Copy(aString);return(*this);}
  812. inline TDes8 &TDes8::operator=(const TDesC8 &aDes)
  813. #line 751
  814.     {Copy(aDes);return(*this);}
  815. inline TDes8 &TDes8::operator=(const TDes8 &aDes)
  816. #line 769
  817.     {Copy(aDes);return(*this);}
  818. inline TDes8 &TDes8::operator+=(const TDesC8 &aDes)
  819. #line 788
  820. {Append(aDes);return(*this);}
  821. inline const TUint8 &TDes8::operator[](TInt anIndex) const
  822. #line 806
  823. {return(AtC(anIndex));}
  824. inline TUint8 &TDes8::operator[](TInt anIndex)
  825. #line 825
  826. {return((TUint8 &)AtC(anIndex));}
  827. inline TInt TDes8::MaxLength() const
  828. #line 839
  829. {return(iMaxLength);}
  830. inline TInt TDes8::MaxSize() const
  831. #line 853
  832. {return(iMaxLength);}
  833. inline TUint8 * TDes8::WPtr() const
  834. {return((TUint8 *)Ptr());}
  835. inline TPtr8 &TPtr8::operator=(const TUint8 *aString)
  836. #line 879
  837. {Copy(aString);return(*this);}
  838. inline TPtr8 &TPtr8::operator=(const TDesC8 &aDes)
  839. #line 899
  840. {Copy(aDes);return(*this);}
  841. inline TPtr8 &TPtr8::operator=(const TPtr8 &aDes)
  842. #line 919
  843. {Copy(aDes);return(*this);}
  844. inline void TPtr8::Set(TUint8 *aBuf,TInt aLength,TInt aMaxLength)
  845. #line 940
  846. {new(this) TPtr8(aBuf,aLength,aMaxLength);}
  847. inline void TPtr8::Set(const TPtr8 &aPtr)
  848. #line 955
  849. {new(this) TPtr8(aPtr);}
  850. template <TInt S>
  851. inline TBuf8<S>::TBuf8()
  852. : TBufBase8(S)
  853. #line 972
  854. {}
  855. template <TInt S>
  856. inline TBuf8<S>::TBuf8(TInt aLength)
  857. : TBufBase8(aLength,S)
  858. #line 994
  859. {}
  860. template <TInt S>
  861. inline TBuf8<S>::TBuf8(const TUint8 *aString)
  862. : TBufBase8(aString,S)
  863. #line 1018
  864. {}
  865. template <TInt S>
  866. inline TBuf8<S>::TBuf8(const TDesC8 &aDes)
  867. : TBufBase8(aDes,S)
  868. #line 1042
  869. {}
  870. template <TInt S>
  871. inline TBuf8<S> &TBuf8<S>::operator=(const TUint8 *aString)
  872. #line 1062
  873. {Copy(aString);return(*this);}
  874. template <TInt S>
  875. inline TBuf8<S> &TBuf8<S>::operator=(const TDesC8 &aDes)
  876. #line 1082
  877. {Copy(aDes);return(*this);}
  878. template <TInt S>
  879. inline TBuf8<S>& TBuf8<S>::operator=(const TBuf8<S>& aBuf)
  880. #line 1100
  881. {Copy(aBuf);return *this;}
  882. template <TInt S>
  883. inline TAlignedBuf8<S>::TAlignedBuf8()
  884. : TBufBase8(S)
  885. #line 1117
  886. {}
  887. template <TInt S>
  888. inline TAlignedBuf8<S>::TAlignedBuf8(TInt aLength)
  889. : TBufBase8(aLength,S)
  890. #line 1139
  891. {}
  892. template <TInt S>
  893. inline TAlignedBuf8<S>::TAlignedBuf8(const TUint8 *aString)
  894. : TBufBase8(aString,S)
  895. #line 1163
  896. {}
  897. template <TInt S>
  898. inline TAlignedBuf8<S>::TAlignedBuf8(const TDesC8 &aDes)
  899. : TBufBase8(aDes,S)
  900. #line 1187
  901. {}
  902. template <TInt S>
  903. inline TAlignedBuf8<S> &TAlignedBuf8<S>::operator=(const TUint8 *aString)
  904. #line 1207
  905. {Copy(aString);return(*this);}
  906. template <TInt S>
  907. inline TAlignedBuf8<S> &TAlignedBuf8<S>::operator=(const TDesC8 &aDes)
  908. #line 1227
  909. {Copy(aDes);return(*this);}
  910. template <TInt S>
  911. inline TAlignedBuf8<S>& TAlignedBuf8<S>::operator=(const TAlignedBuf8<S>& aBuf)
  912. #line 1245
  913. {Copy(aBuf);return *this;}
  914. template <TInt S>
  915. inline const TDesC8* TLitC8<S>::operator&() const
  916. {return (reinterpret_cast<const TDesC8*>(this)) ;}
  917. template <TInt S>
  918. inline const TDesC8& TLitC8<S>::operator()() const
  919. {return *operator&();}
  920. template <TInt S>
  921. inline TLitC8<S>::operator const TDesC8&() const
  922. {return *operator&();}
  923. template <TInt S>
  924. inline TLitC8<S>::operator const __TRefDesC8() const
  925. {return *operator&();}
  926. inline TBool TDesC16::operator<(const TDesC16 &aDes) const
  927. #line 1314
  928. {return(Compare(aDes)<0);}
  929. inline TBool TDesC16::operator<=(const TDesC16 &aDes) const
  930. #line 1333
  931. {return(Compare(aDes)<=0);}
  932. inline TBool TDesC16::operator>(const TDesC16 &aDes) const
  933. #line 1352
  934. {return(Compare(aDes)>0);}
  935. inline TBool TDesC16::operator>=(const TDesC16 &aDes) const
  936. #line 1371
  937. {return(Compare(aDes)>=0);}
  938. inline TBool TDesC16::operator==(const TDesC16 &aDes) const
  939. #line 1390
  940. {return(Compare(aDes)==0);}
  941. inline TBool TDesC16::operator!=(const TDesC16 &aDes) const
  942. #line 1409
  943. {return(Compare(aDes)!=0);}
  944. inline const TUint16 &TDesC16::operator[](TInt anIndex) const
  945. #line 1427
  946. {return(AtC(anIndex));}
  947. inline TInt TDesC16::Length() const
  948. {return(iLength&KMaskDesLength16);}
  949. inline TInt TDesC16::Size() const
  950. #line 1454
  951. {return(Length()<<1);}
  952. inline void TDesC16::DoSetLength(TInt aLength)
  953. {iLength=(iLength&(~KMaskDesLength16))|aLength;}
  954. inline void TPtrC16::Set(const TUint16 *aBuf,TInt aLength)
  955. #line 1478
  956. {new(this) TPtrC16(aBuf,aLength);}
  957. inline void TPtrC16::Set(const TDesC16 &aDes)
  958. {new(this) TPtrC16(aDes);}
  959. inline void TPtrC16::Set(const TPtrC16& aPtr)
  960. {new(this) TPtrC16(aPtr);}
  961. inline TPtr16 TBufCBase16::DoDes(TInt aMaxLength)
  962. {return TPtr16(*this,aMaxLength);}
  963. template <TInt S>
  964. inline TBufC16<S>::TBufC16()
  965. : TBufCBase16()
  966. #line 1526
  967. {}
  968. template <TInt S>
  969. inline TBufC16<S>::TBufC16(const TUint16 *aString)
  970. : TBufCBase16(aString,S)
  971. #line 1550
  972. {}
  973. template <TInt S>
  974. inline TBufC16<S>::TBufC16(const TDesC16 &aDes)
  975. : TBufCBase16(aDes,S)
  976. #line 1574
  977. {}
  978. template <TInt S>
  979. inline TBufC16<S> &TBufC16<S>::operator=(const TUint16 *aString)
  980. #line 1593
  981. {Copy(aString,S);return(*this);}
  982. template <TInt S>
  983. inline TBufC16<S> &TBufC16<S>::operator=(const TDesC16 &aDes)
  984. #line 1612
  985. {Copy(aDes,S);return(*this);}
  986. template <TInt S>
  987. inline TPtr16 TBufC16<S>::Des()
  988. #line 1642
  989. {return(DoDes(S));}
  990. inline HBufC16 &HBufC16::operator=(const HBufC16 &aLcb)
  991. #line 1667
  992. {return *this=static_cast<const TDesC16&>(aLcb);}
  993. inline TDes16 &TDes16::operator=(const TUint16 *aString)
  994. #line 1687
  995.     {Copy(aString);return(*this);}
  996. inline TDes16 &TDes16::operator=(const TDesC16 &aDes)
  997. #line 1705
  998.     {Copy(aDes);return(*this);}
  999. inline TDes16 &TDes16::operator=(const TDes16 &aDes)
  1000. #line 1723
  1001.     {Copy(aDes);return(*this);}
  1002. inline TDes16 &TDes16::operator+=(const TDesC16 &aDes)
  1003. #line 1742
  1004. {Append(aDes);return(*this);}
  1005. inline const TUint16 &TDes16::operator[](TInt anIndex) const
  1006. #line 1759
  1007. {return(AtC(anIndex));}
  1008. inline TUint16 &TDes16::operator[](TInt anIndex)
  1009. #line 1778
  1010. {return((TUint16 &)AtC(anIndex));}
  1011. inline TInt TDes16::MaxLength() const
  1012. #line 1792
  1013. {return(iMaxLength);}
  1014. inline TInt TDes16::MaxSize() const
  1015. #line 1806
  1016. {return(iMaxLength<<1);}
  1017. inline TUint16 * TDes16::WPtr() const
  1018. {return((TUint16 *)Ptr());}
  1019. inline TPtr16 &TPtr16::operator=(const TUint16 *aString)
  1020. #line 1832
  1021. {Copy(aString);return(*this);}
  1022. inline TPtr16 &TPtr16::operator=(const TDesC16 &aDes)
  1023. #line 1852
  1024. {Copy(aDes);return(*this);}
  1025. inline TPtr16 &TPtr16::operator=(const TPtr16 &aDes)
  1026. #line 1872
  1027. {Copy(aDes);return(*this);}
  1028. inline void TPtr16::Set(TUint16 *aBuf,TInt aLength,TInt aMaxLength)
  1029. #line 1893
  1030. {new(this) TPtr16(aBuf,aLength,aMaxLength);}
  1031. inline void TPtr16::Set(const TPtr16 &aPtr)
  1032. #line 1908
  1033. {new(this) TPtr16(aPtr);}
  1034. template <TInt S>
  1035. inline TBuf16<S>::TBuf16()
  1036. : TBufBase16(S)
  1037. #line 1925
  1038. {}
  1039. template <TInt S>
  1040. inline TBuf16<S>::TBuf16(TInt aLength)
  1041. : TBufBase16(aLength,S)
  1042. #line 1947
  1043. {}
  1044. template <TInt S>
  1045. inline TBuf16<S>::TBuf16(const TUint16 *aString)
  1046. : TBufBase16(aString,S)
  1047. #line 1971
  1048. {}
  1049. template <TInt S>
  1050. inline TBuf16<S>::TBuf16(const TDesC16 &aDes)
  1051. : TBufBase16(aDes,S)
  1052. #line 1995
  1053. {}
  1054. template <TInt S>
  1055. inline TBuf16<S> &TBuf16<S>::operator=(const TUint16 *aString)
  1056. #line 2015
  1057. {Copy(aString);return(*this);}
  1058. template <TInt S>
  1059. inline TBuf16<S> &TBuf16<S>::operator=(const TDesC16 &aDes)
  1060. #line 2035
  1061. {Copy(aDes);return(*this);}
  1062. template <TInt S>
  1063. inline TBuf16<S>& TBuf16<S>::operator=(const TBuf16<S>& aBuf)
  1064. #line 2056
  1065. {Copy(aBuf);return *this;}
  1066. #line 2083
  1067. inline void RBuf16::CreateL(RReadStream &aStream,TInt aMaxLength)
  1068. {
  1069. Assign(HBufC16::NewL(aStream,aMaxLength));
  1070. }
  1071. template <TInt S>
  1072. inline const TDesC16* TLitC16<S>::operator&() const
  1073. {return (reinterpret_cast<const TDesC16*>(this)) ;}
  1074. template <TInt S>
  1075. inline const TDesC16& TLitC16<S>::operator()() const
  1076. {return *operator&();}
  1077. template <TInt S>
  1078. inline TLitC16<S>::operator const TDesC16&() const
  1079. {return *operator&();}
  1080. template <TInt S>
  1081. inline TLitC16<S>::operator const __TRefDesC16() const
  1082. {return *operator&();}
  1083. template <TInt S>
  1084. inline TBufC<S>::TBufC()
  1085. : TBufCBase16()
  1086. #line 2157
  1087. {}
  1088. template <TInt S>
  1089. inline TBufC<S>::TBufC(const TText *aString)
  1090. : TBufCBase16(aString,S)
  1091. #line 2186
  1092. {}
  1093. template <TInt S>
  1094. inline TBufC<S>::TBufC(const TDesC &aDes)
  1095. : TBufCBase16(aDes,S)
  1096. #line 2219
  1097. {}
  1098. #line 2234
  1099. template <TInt S>
  1100. inline TBufC<S> &TBufC<S>::operator=(const TText *aString)
  1101. #line 2253
  1102. {Copy(aString,S);return(*this);}
  1103. template <TInt S>
  1104. inline TBufC<S> &TBufC<S>::operator=(const TDesC &aDes)
  1105. #line 2277
  1106. {Copy(aDes,S);return(*this);}
  1107. template <TInt S>
  1108. inline TPtr TBufC<S>::Des()
  1109. #line 2308
  1110. {return(DoDes(S));}
  1111. template <TInt S>
  1112. inline TBuf<S>::TBuf()
  1113. : TBufBase16(S)
  1114. {}
  1115. template <TInt S>
  1116. inline TBuf<S>::TBuf(TInt aLength)
  1117. : TBufBase16(aLength,S)
  1118. #line 2350
  1119. {}
  1120. template <TInt S>
  1121. inline TBuf<S>::TBuf(const TText *aString)
  1122. : TBufBase16(aString,S)
  1123. #line 2378
  1124. {}
  1125. template <TInt S>
  1126. inline TBuf<S>::TBuf(const TDesC &aDes)
  1127. : TBufBase16(aDes,S)
  1128. #line 2407
  1129. {}
  1130. #line 2426
  1131. template <TInt S>
  1132. inline TBuf<S> &TBuf<S>::operator=(const TText *aString)
  1133. {Copy(aString);return(*this);}
  1134. template <TInt S>
  1135. inline TBuf<S> &TBuf<S>::operator=(const TDesC &aDes)
  1136. {Copy(aDes);return(*this);}
  1137. template <TInt S>
  1138. inline TBuf<S> &TBuf<S>::operator=(const TBuf<S> &aBuf)
  1139. {Copy(aBuf);return(*this);}
  1140. template <TInt S>
  1141. inline const TDesC* TLitC<S>::operator&() const
  1142. {return (reinterpret_cast<const TDesC*>(this)) ;}
  1143. template <TInt S>
  1144. inline const TDesC& TLitC<S>::operator()() const
  1145. {return *operator&();}
  1146. template <TInt S>
  1147. inline TLitC<S>::operator const TDesC&() const
  1148. {return *operator&();}
  1149. template <TInt S>
  1150. inline TLitC<S>::operator const __TRefDesC() const
  1151. {return *operator&();}
  1152. template <class T>
  1153. inline TPckgC<T>::TPckgC(const T &aRef)
  1154. : TPtrC8((const TUint8 *)&aRef,sizeof(T))
  1155. {}
  1156. template <class T>
  1157. inline const T &TPckgC<T>::operator()() const
  1158. {return(*((const T *)iPtr));}
  1159. template <class T>
  1160. inline TPckg<T>::TPckg(const T &aRef)
  1161. : TPtr8((TUint8 *)&aRef,sizeof(T),sizeof(T))
  1162. {}
  1163. template <class T>
  1164. inline T &TPckg<T>::operator()()
  1165. {return(*((T *)iPtr));}
  1166. template <class T>
  1167. inline TPckgBuf<T>::TPckgBuf()
  1168. : TAlignedBuf8<sizeof(T)>(sizeof(T))
  1169. {new(&this->iBuf[0]) T;}
  1170. template <class T>
  1171. inline TPckgBuf<T>::TPckgBuf(const T &aRef)
  1172. : TAlignedBuf8<sizeof(T)>(sizeof(T))
  1173. #line 2576
  1174. {new(&this->iBuf[0]) T(aRef);}
  1175. template <class T>
  1176. inline TPckgBuf<T> &TPckgBuf<T>::operator=(const TPckgBuf<T> &aRef)
  1177. {this->Copy(aRef);return(*this);}
  1178. template <class T>
  1179. inline T &TPckgBuf<T>::operator=(const T &aRef)
  1180. #line 2605
  1181. {this->Copy((TUint8 *)&aRef,sizeof(T));return(*((T *)&this->iBuf[0]));}
  1182. template <class T>
  1183. inline T &TPckgBuf<T>::operator()()
  1184. {return(*((T *)&this->iBuf[0]));}
  1185. template <class T>
  1186. inline const T &TPckgBuf<T>::operator()() const
  1187. {return(*((T *)&this->iBuf[0]));}
  1188. inline TRequestStatus::TRequestStatus()
  1189. : iFlags(0)
  1190. {}
  1191. inline TRequestStatus::TRequestStatus(TInt aVal)
  1192. : iStatus(aVal),
  1193. iFlags(aVal==KRequestPending ? TRequestStatus::ERequestPending : 0)
  1194. {}
  1195. inline TInt TRequestStatus::operator=(TInt aVal)
  1196. {
  1197. if(aVal==KRequestPending)
  1198. iFlags|=TRequestStatus::ERequestPending;
  1199. else
  1200. iFlags&=~TRequestStatus::ERequestPending;
  1201. return (iStatus=aVal);
  1202. }
  1203. inline TBool TRequestStatus::operator==(TInt aVal) const
  1204. #line 2691
  1205. {return(iStatus==aVal);}
  1206. inline TBool TRequestStatus::operator!=(TInt aVal) const
  1207. #line 2705
  1208. {return(iStatus!=aVal);}
  1209. inline TBool TRequestStatus::operator>=(TInt aVal) const
  1210. #line 2720
  1211. {return(iStatus>=aVal);}
  1212. inline TBool TRequestStatus::operator<=(TInt aVal) const
  1213. #line 2735
  1214. {return(iStatus<=aVal);}
  1215. inline TBool TRequestStatus::operator>(TInt aVal) const
  1216. #line 2750
  1217. {return(iStatus>aVal);}
  1218. inline TBool TRequestStatus::operator<(TInt aVal) const
  1219. #line 2765
  1220. {return(iStatus<aVal);}
  1221. inline TInt TRequestStatus::Int() const
  1222. {return(iStatus);}
  1223. inline TPoint::TPoint()
  1224. : iX(0),iY(0)
  1225. {}
  1226. inline TPoint::TPoint(TInt aX,TInt aY)
  1227. : iX(aX),iY(aY)
  1228. {}
  1229. inline TSize::TSize()
  1230. : iWidth(0),iHeight(0)
  1231. {}
  1232. inline TSize::TSize(TInt aWidth,TInt aHeight)
  1233. : iWidth(aWidth),iHeight(aHeight)
  1234. {}
  1235. inline RHandleBase::RHandleBase()
  1236. : iHandle(0)
  1237. {}
  1238. inline RHandleBase::RHandleBase(TInt aHandle)
  1239. : iHandle(aHandle)
  1240. #line 2853
  1241. {}
  1242. inline void RHandleBase::SetHandle(TInt aHandle)
  1243. { iHandle=aHandle; }
  1244. inline TInt RHandleBase::Handle() const
  1245. {return(iHandle);}
  1246. inline TInt RHandleBase::SetReturnedHandle(TInt aHandleOrError)
  1247. #line 2899
  1248. {
  1249. if(aHandleOrError>=0)
  1250. {
  1251. iHandle = aHandleOrError;
  1252. return KErrNone;
  1253. }
  1254. iHandle = 0;
  1255. return aHandleOrError;
  1256. }
  1257. inline TInt RSemaphore::Open(const TFindSemaphore& aFind,TOwnerType aType)
  1258. #line 2935
  1259. {return(RHandleBase::Open((const TFindHandleBase&)aFind,aType));}
  1260. #line 2947
  1261. inline RFastLock::RFastLock()
  1262. : iCount(0)
  1263. {}
  1264. #line 2960
  1265. inline RMessagePtr2::RMessagePtr2()
  1266. : iHandle(0)
  1267. {}
  1268. #line 2972
  1269. inline TBool RMessagePtr2::IsNull() const
  1270. {return iHandle==0;}
  1271. #line 2983
  1272. inline TInt RMessagePtr2::Handle() const
  1273. {return iHandle;}
  1274. inline TBool operator==(RMessagePtr2 aLeft,RMessagePtr2 aRight)
  1275. {return aLeft.Handle()==aRight.Handle();}
  1276. inline TBool operator!=(RMessagePtr2 aLeft,RMessagePtr2 aRight)
  1277. {return aLeft.Handle()!=aRight.Handle();}
  1278. #line 3000
  1279. inline RMessage2::RMessage2()
  1280. {}
  1281. #line 3011
  1282. inline TInt RMessage2::Function() const
  1283. {return(iFunction);}
  1284. #line 3022
  1285. inline TInt RMessage2::Int0() const
  1286. {return(iArgs[0]);}
  1287. #line 3033
  1288. inline TInt RMessage2::Int1() const
  1289. {return(iArgs[1]);}
  1290. #line 3044
  1291. inline TInt RMessage2::Int2() const
  1292. {return(iArgs[2]);}
  1293. #line 3054
  1294. inline TInt RMessage2::Int3() const
  1295. {return(iArgs[3]);}
  1296. #line 3064
  1297. inline const TAny *RMessage2::Ptr0() const
  1298. {return((const TAny *)iArgs[0]);}
  1299. #line 3075
  1300. inline const TAny *RMessage2::Ptr1() const
  1301. {return((const TAny *)iArgs[1]);}
  1302. #line 3086
  1303. inline const TAny *RMessage2::Ptr2() const
  1304. {return((const TAny *)iArgs[2]);}
  1305. #line 3097
  1306. inline const TAny *RMessage2::Ptr3() const
  1307. {return((const TAny *)iArgs[3]);}
  1308. #line 3107
  1309. inline CSession2* RMessage2::Session() const
  1310. {return (CSession2*)iSessionPtr; }
  1311. inline TUid TUid::Uid(TInt aUid)
  1312. #line 3123
  1313. {TUid uid={aUid};return uid;}
  1314. inline TUid TUid::Null()
  1315. {TUid uid={KNullUidValue};return uid;}
  1316. template <class T>
  1317. inline TArray<T>::TArray(TInt (*aCount)(const CBase *aPtr),const TAny *(*anAt)(const CBase *aPtr,TInt anIndex),const CBase *aPtr)
  1318. : iPtr(aPtr),iCount(aCount),iAt(anAt)
  1319. #line 3195
  1320. {}
  1321. template <class T>
  1322. inline TInt TArray<T>::Count() const
  1323. {return((*iCount)(iPtr));}
  1324. template <class T>
  1325. inline const T &TArray<T>::operator[](TInt anIndex) const
  1326. #line 3232
  1327. {return(*((const T *)(*iAt)(iPtr,anIndex)));}
  1328. template <class T>
  1329. inline TIdentityRelation<T>::TIdentityRelation( TBool (*anIdentity)(const T&, const T&) )
  1330. #line 3254
  1331. { iIdentity=(TGeneralIdentityRelation)anIdentity; }
  1332. template <class T>
  1333. inline TIdentityRelation<T>::operator TGeneralIdentityRelation() const
  1334. { return iIdentity; }
  1335. template <class T>
  1336. inline TLinearOrder<T>::TLinearOrder( TInt(*anOrder)(const T&, const T&) )
  1337. #line 3288
  1338. { iOrder=(TGeneralLinearOrder)anOrder; }
  1339. template <class T>
  1340. inline TLinearOrder<T>::operator TGeneralLinearOrder() const
  1341. { return iOrder; }
  1342. #line 3312
  1343. template <class T>
  1344. inline RPointerArray<T>::RPointerArray()
  1345. : RPointerArrayBase()
  1346. {}
  1347. #line 3331
  1348. template <class T>
  1349. inline RPointerArray<T>::RPointerArray(TInt aGranularity)
  1350. : RPointerArrayBase(aGranularity)
  1351. {}
  1352. #line 3354
  1353. template <class T>
  1354. inline RPointerArray<T>::RPointerArray(TInt aMinGrowBy, TInt aFactor)
  1355. : RPointerArrayBase(aMinGrowBy, aFactor)
  1356. {}
  1357. template <class T>
  1358. inline void RPointerArray<T>::Close()
  1359. #line 3372
  1360. {RPointerArrayBase::Close();}
  1361. template <class T>
  1362. inline TInt RPointerArray<T>::Count() const
  1363. { return RPointerArrayBase::Count(); }
  1364. template <class T>
  1365. inline T* const& RPointerArray<T>::operator[](TInt anIndex) const
  1366. #line 3408
  1367. {return (T* const&)At(anIndex);}
  1368. template <class T>
  1369. inline T*& RPointerArray<T>::operator[](TInt anIndex)
  1370. #line 3432
  1371. {return (T*&)At(anIndex);}
  1372. template <class T>
  1373. inline TInt RPointerArray<T>::Append(const T* anEntry)
  1374. #line 3447
  1375. { return RPointerArrayBase::Append(anEntry); }
  1376. template <class T>
  1377. inline TInt RPointerArray<T>::Insert(const T* anEntry, TInt aPos)
  1378. #line 3468
  1379. { return RPointerArrayBase::Insert(anEntry,aPos); }
  1380. template <class T>
  1381. inline void RPointerArray<T>::Remove(TInt anIndex)
  1382. #line 3488
  1383. {RPointerArrayBase::Remove(anIndex);}
  1384. template <class T>
  1385. inline void RPointerArray<T>::Compress()
  1386. #line 3503
  1387. {RPointerArrayBase::Compress();}
  1388. template <class T>
  1389. inline void RPointerArray<T>::Reset()
  1390. #line 3522
  1391. {RPointerArrayBase::Reset();}
  1392. template <class T>
  1393. inline TInt RPointerArray<T>::Find(const T* anEntry) const
  1394. #line 3542
  1395. { return RPointerArrayBase::Find(anEntry); }
  1396. template <class T>
  1397. inline TInt RPointerArray<T>::Find(const T* anEntry, TIdentityRelation<T> anIdentity) const
  1398. #line 3566
  1399. { return RPointerArrayBase::Find(anEntry,anIdentity); }
  1400. template <class T>
  1401. inline TInt RPointerArray<T>::FindInAddressOrder(const T* anEntry) const
  1402. #line 3584
  1403. { return RPointerArrayBase::FindIsqUnsigned((TUint)anEntry); }
  1404. template <class T>
  1405. inline TInt RPointerArray<T>::FindInOrder(const T* anEntry, TLinearOrder<T> anOrder) const
  1406. #line 3606
  1407. { return RPointerArrayBase::FindIsq(anEntry,anOrder); }
  1408. template <class T>
  1409. inline TInt RPointerArray<T>::FindInAddressOrder(const T* anEntry, TInt& anIndex) const
  1410. #line 3631
  1411. { return RPointerArrayBase::BinarySearchUnsigned((TUint)anEntry,anIndex); }
  1412. template <class T>
  1413. inline TInt RPointerArray<T>::FindInOrder(const T* anEntry, TInt& anIndex, TLinearOrder<T> anOrder) const
  1414. #line 3660
  1415. { return RPointerArrayBase::BinarySearch(anEntry,anIndex,anOrder); }
  1416. template <class T>
  1417. inline TInt RPointerArray<T>::SpecificFindInAddressOrder(const T* anEntry, TInt aMode) const
  1418. #line 3691
  1419. { return RPointerArrayBase::FindIsqUnsigned((TUint)anEntry, aMode); }
  1420. template <class T>
  1421. inline TInt RPointerArray<T>::SpecificFindInOrder(const T* anEntry, TLinearOrder<T> anOrder, TInt aMode) const
  1422. #line 3726
  1423. { return RPointerArrayBase::FindIsq(anEntry,anOrder,aMode); }
  1424. template <class T>
  1425. inline TInt RPointerArray<T>::SpecificFindInAddressOrder(const T* anEntry, TInt& anIndex, TInt aMode) const
  1426. #line 3766
  1427. { return RPointerArrayBase::BinarySearchUnsigned((TUint)anEntry,anIndex,aMode); }
  1428. template <class T>
  1429. inline TInt RPointerArray<T>::SpecificFindInOrder(const T* anEntry, TInt& anIndex, TLinearOrder<T> anOrder, TInt aMode) const
  1430. #line 3810
  1431. { return RPointerArrayBase::BinarySearch(anEntry,anIndex,anOrder,aMode); }
  1432. template <class T>
  1433. inline TInt RPointerArray<T>::InsertInAddressOrder(const T* anEntry)
  1434. #line 3833
  1435. { return RPointerArrayBase::InsertIsqUnsigned((TUint)anEntry,EFalse); }
  1436. template <class T>
  1437. inline TInt RPointerArray<T>::InsertInOrder(const T* anEntry, TLinearOrder<T> anOrder)
  1438. #line 3862
  1439. { return RPointerArrayBase::InsertIsq(anEntry,anOrder,EFalse); }
  1440. template <class T>
  1441. inline TInt RPointerArray<T>::InsertInAddressOrderAllowRepeats(const T* anEntry)
  1442. #line 3885
  1443. { return RPointerArrayBase::InsertIsqUnsigned((TUint)anEntry,ETrue); }
  1444. template <class T>
  1445. inline TInt RPointerArray<T>::InsertInOrderAllowRepeats(const T* anEntry, TLinearOrder<T> anOrder)
  1446. #line 3911
  1447. { return RPointerArrayBase::InsertIsq(anEntry,anOrder,ETrue); }
  1448. template <class T>
  1449. inline RPointerArray<T>::RPointerArray(T** aEntries, TInt aCount)
  1450. : RPointerArrayBase((TAny **)aEntries, aCount)
  1451. #line 3935
  1452. {}
  1453. template <class T>
  1454. inline void RPointerArray<T>::GranularCompress()
  1455. #line 3950
  1456. {RPointerArrayBase::GranularCompress();}
  1457. template <class T>
  1458. inline TInt RPointerArray<T>::Reserve(TInt aCount)
  1459. #line 3969
  1460. { return RPointerArrayBase::DoReserve(aCount); }
  1461. template <class T>
  1462. inline void RPointerArray<T>::SortIntoAddressOrder()
  1463. { HeapSortUnsigned(); }
  1464. template <class T>
  1465. inline void RPointerArray<T>::Sort(TLinearOrder<T> anOrder)
  1466. #line 3996
  1467. { HeapSort(anOrder); }
  1468. template <class T>
  1469. inline TArray<T*> RPointerArray<T>::Array() const
  1470. { return TArray<T*>(GetCount,GetElementPtr,(const CBase*)this); }
  1471. template <class T>
  1472. void RPointerArray<T>::ResetAndDestroy()
  1473. #line 4026
  1474. {
  1475. TInt c=Count();
  1476. T** pE=(T**)Entries();
  1477. ZeroCount();
  1478. TInt i;
  1479. for (i=0; i<c; i++)
  1480. {
  1481. delete *pE;
  1482. pE++;
  1483. }
  1484. Reset();
  1485. }
  1486. #line 4049
  1487. inline RPointerArray<TAny>::RPointerArray()
  1488. : RPointerArrayBase()
  1489. {}
  1490. #line 4067
  1491. inline RPointerArray<TAny>::RPointerArray(TInt aGranularity)
  1492. : RPointerArrayBase(aGranularity)
  1493. {}
  1494. #line 4089
  1495. inline RPointerArray<TAny>::RPointerArray(TInt aMinGrowBy, TInt aFactor)
  1496. : RPointerArrayBase(aMinGrowBy, aFactor)
  1497. {}
  1498. inline void RPointerArray<TAny>::Close()
  1499. #line 4105
  1500. {RPointerArrayBase::Close();}
  1501. inline TInt RPointerArray<TAny>::Count() const
  1502. { return RPointerArrayBase::Count(); }
  1503. inline TAny* const& RPointerArray<TAny>::operator[](TInt anIndex) const
  1504. #line 4139
  1505. {return At(anIndex);}
  1506. inline TAny*& RPointerArray<TAny>::operator[](TInt anIndex)
  1507. #line 4162
  1508. {return At(anIndex);}
  1509. inline TInt RPointerArray<TAny>::Append(const TAny* anEntry)
  1510. #line 4176
  1511. { return RPointerArrayBase::Append(anEntry); }
  1512. inline TInt RPointerArray<TAny>::Insert(const TAny* anEntry, TInt aPos)
  1513. #line 4196
  1514. { return RPointerArrayBase::Insert(anEntry,aPos); }
  1515. inline void RPointerArray<TAny>::Remove(TInt anIndex)
  1516. #line 4215
  1517. {RPointerArrayBase::Remove(anIndex);}
  1518. inline void RPointerArray<TAny>::Compress()
  1519. #line 4229
  1520. {RPointerArrayBase::Compress();}
  1521. inline void RPointerArray<TAny>::Reset()
  1522. #line 4247
  1523. {RPointerArrayBase::Reset();}
  1524. inline TInt RPointerArray<TAny>::Find(const TAny* anEntry) const
  1525. #line 4266
  1526. { return RPointerArrayBase::Find(anEntry); }
  1527. inline TInt RPointerArray<TAny>::FindInAddressOrder(const TAny* anEntry) const
  1528. #line 4283
  1529. { return RPointerArrayBase::FindIsqUnsigned((TUint)anEntry); }
  1530. inline TInt RPointerArray<TAny>::FindInAddressOrder(const TAny* anEntry, TInt& anIndex) const
  1531. #line 4307
  1532. { return RPointerArrayBase::BinarySearchUnsigned((TUint)anEntry,anIndex); }
  1533. inline TInt RPointerArray<TAny>::SpecificFindInAddressOrder(const TAny* anEntry, TInt aMode) const
  1534. #line 4337
  1535. { return RPointerArrayBase::FindIsqUnsigned((TUint)anEntry, aMode); }
  1536. inline TInt RPointerArray<TAny>::SpecificFindInAddressOrder(const TAny* anEntry, TInt& anIndex, TInt aMode) const
  1537. #line 4376
  1538. { return RPointerArrayBase::BinarySearchUnsigned((TUint)anEntry,anIndex,aMode); }
  1539. inline TInt RPointerArray<TAny>::InsertInAddressOrder(const TAny* anEntry)
  1540. #line 4398
  1541. { return RPointerArrayBase::InsertIsqUnsigned((TUint)anEntry,EFalse); }
  1542. inline TInt RPointerArray<TAny>::InsertInAddressOrderAllowRepeats(const TAny* anEntry)
  1543. #line 4420
  1544. { return RPointerArrayBase::InsertIsqUnsigned((TUint)anEntry,ETrue); }
  1545. inline RPointerArray<TAny>::RPointerArray(TAny** aEntries, TInt aCount)
  1546. : RPointerArrayBase((TAny **)aEntries, aCount)
  1547. #line 4443
  1548. {}
  1549. inline void RPointerArray<TAny>::GranularCompress()
  1550. #line 4457
  1551. {RPointerArrayBase::GranularCompress();}
  1552. inline void RPointerArray<TAny>::SortIntoAddressOrder()
  1553. { HeapSortUnsigned(); }
  1554. inline TArray<TAny*> RPointerArray<TAny>::Array() const
  1555. { return TArray<TAny*>(GetCount,GetElementPtr,(const CBase*)this); }
  1556. template <class T>
  1557. inline RArray<T>::RArray()
  1558. : RArrayBase(sizeof(T))
  1559. #line 4497
  1560. {}
  1561. template <class T>
  1562. inline RArray<T>::RArray(TInt aGranularity)
  1563. : RArrayBase(sizeof(T),aGranularity)
  1564. #line 4519
  1565. {}
  1566. template <class T>
  1567. inline RArray<T>::RArray(TInt aGranularity, TInt aKeyOffset)
  1568. : RArrayBase(sizeof(T),aGranularity,aKeyOffset)
  1569. #line 4543
  1570. {}
  1571. #line 4567
  1572. template <class T>
  1573. inline RArray<T>::RArray(TInt aMinGrowBy, TInt aKeyOffset, TInt aFactor)
  1574. : RArrayBase(sizeof(T), aMinGrowBy, aKeyOffset, aFactor)
  1575. {}
  1576. template <class T>
  1577. inline void RArray<T>::Close()
  1578. {RArrayBase::Close();}
  1579. template <class T>
  1580. inline TInt RArray<T>::Count() const
  1581. {return RArrayBase::Count();}
  1582. template <class T>
  1583. inline const T& RArray<T>::operator[](TInt anIndex) const
  1584. #line 4616
  1585. {return *(const T*)At(anIndex); }
  1586. template <class T>
  1587. inline T& RArray<T>::operator[](TInt anIndex)
  1588. #line 4638
  1589. {return *(T*)At(anIndex); }
  1590. template <class T>
  1591. inline TInt RArray<T>::Append(const T& anEntry)
  1592. #line 4653
  1593. {return RArrayBase::Append(&anEntry);}
  1594. template <class T>
  1595. inline TInt RArray<T>::Insert(const T& anEntry, TInt aPos)
  1596. #line 4675
  1597. {return RArrayBase::Insert(&anEntry,aPos);}
  1598. template <class T>
  1599. inline void RArray<T>::Remove(TInt anIndex)
  1600. #line 4692
  1601. {RArrayBase::Remove(anIndex);}
  1602. template <class T>
  1603. inline void RArray<T>::Compress()
  1604. {RArrayBase::Compress();}
  1605. template <class T>
  1606. inline void RArray<T>::Reset()
  1607. #line 4721
  1608. {RArrayBase::Reset();}
  1609. template <class T>
  1610. inline TInt RArray<T>::Find(const T& anEntry) const
  1611. #line 4743
  1612. {return RArrayBase::Find(&anEntry);}
  1613. template <class T>
  1614. inline TInt RArray<T>::Find(const T& anEntry, TIdentityRelation<T> anIdentity) const
  1615. #line 4768
  1616. {return RArrayBase::Find(&anEntry,anIdentity);}
  1617. template <class T>
  1618. inline TInt RArray<T>::FindInSignedKeyOrder(const T& anEntry) const
  1619. #line 4787
  1620. {return RArrayBase::FindIsqSigned(&anEntry);}
  1621. template <class T>
  1622. inline TInt RArray<T>::FindInUnsignedKeyOrder(const T& anEntry) const
  1623. #line 4806
  1624. {return RArrayBase::FindIsqUnsigned(&anEntry);}
  1625. template <class T>
  1626. inline TInt RArray<T>::FindInOrder(const T& anEntry, TLinearOrder<T> anOrder) const
  1627. #line 4828
  1628. {return RArrayBase::FindIsq(&anEntry,anOrder);}
  1629. template <class T>
  1630. inline TInt RArray<T>::FindInSignedKeyOrder(const T& anEntry, TInt& anIndex) const
  1631. #line 4851
  1632. {return RArrayBase::BinarySearchSigned(&anEntry,anIndex);}
  1633. template <class T>
  1634. inline TInt RArray<T>::FindInUnsignedKeyOrder(const T& anEntry, TInt& anIndex) const
  1635. #line 4875
  1636. {return RArrayBase::BinarySearchUnsigned(&anEntry,anIndex);}
  1637. template <class T>
  1638. inline TInt RArray<T>::FindInOrder(const T& anEntry, TInt& anIndex, TLinearOrder<T> anOrder) const
  1639. #line 4902
  1640. {return RArrayBase::BinarySearch(&anEntry,anIndex,anOrder);}
  1641. template <class T>
  1642. inline TInt RArray<T>::SpecificFindInSignedKeyOrder(const T& anEntry, TInt aMode) const
  1643. #line 4936
  1644. {return RArrayBase::FindIsqSigned(&anEntry,aMode);}
  1645. template <class T>
  1646. inline TInt RArray<T>::SpecificFindInUnsignedKeyOrder(const T& anEntry, TInt aMode) const
  1647. #line 4970
  1648. {return RArrayBase::FindIsqUnsigned(&anEntry,aMode);}
  1649. template <class T>
  1650. inline TInt RArray<T>::SpecificFindInOrder(const T& anEntry, TLinearOrder<T> anOrder, TInt aMode) const
  1651. #line 5003
  1652. {return RArrayBase::FindIsq(&anEntry,anOrder,aMode);}
  1653. template <class T>
  1654. inline TInt RArray<T>::SpecificFindInSignedKeyOrder(const T& anEntry, TInt& anIndex, TInt aMode) const
  1655. #line 5042
  1656. {return RArrayBase::BinarySearchSigned(&anEntry,anIndex,aMode);}
  1657. template <class T>
  1658. inline TInt RArray<T>::SpecificFindInUnsignedKeyOrder(const T& anEntry, TInt& anIndex, TInt aMode) const
  1659. #line 5081
  1660. {return RArrayBase::BinarySearchUnsigned(&anEntry,anIndex,aMode);}
  1661. template <class T>
  1662. inline TInt RArray<T>::SpecificFindInOrder(const T& anEntry, TInt& anIndex, TLinearOrder<T> anOrder, TInt aMode) const
  1663. #line 5123
  1664. {return RArrayBase::BinarySearch(&anEntry,anIndex,anOrder,aMode);}
  1665. template <class T>
  1666. inline TInt RArray<T>::InsertInSignedKeyOrder(const T& anEntry)
  1667. #line 5146
  1668. {return RArrayBase::InsertIsqSigned(&anEntry,EFalse);}
  1669. template <class T>
  1670. inline TInt RArray<T>::InsertInUnsignedKeyOrder(const T& anEntry)
  1671. #line 5169
  1672. {return RArrayBase::InsertIsqUnsigned(&anEntry,EFalse);}
  1673. template <class T>
  1674. inline TInt RArray<T>::InsertInOrder(const T& anEntry, TLinearOrder<T> anOrder)
  1675. #line 5197
  1676. {return RArrayBase::InsertIsq(&anEntry,anOrder,EFalse);}
  1677. template <class T>
  1678. inline TInt RArray<T>::InsertInSignedKeyOrderAllowRepeats(const T& anEntry)
  1679. #line 5221
  1680. {return RArrayBase::InsertIsqSigned(&anEntry,ETrue);}
  1681. template <class T>
  1682. inline TInt RArray<T>::InsertInUnsignedKeyOrderAllowRepeats(const T& anEntry)
  1683. #line 5245
  1684. {return RArrayBase::InsertIsqUnsigned(&anEntry,ETrue);}
  1685. template <class T>
  1686. inline TInt RArray<T>::InsertInOrderAllowRepeats(const T& anEntry, TLinearOrder<T> anOrder)
  1687. #line 5272
  1688. {return RArrayBase::InsertIsq(&anEntry,anOrder,ETrue);}
  1689. template <class T>
  1690. inline RArray<T>::RArray(TInt aEntrySize,T* aEntries, TInt aCount)
  1691. : RArrayBase(aEntrySize,aEntries,aCount)
  1692. #line 5303
  1693. {}
  1694. template <class T>
  1695. inline void RArray<T>::GranularCompress()
  1696. #line 5318
  1697. {RArrayBase::GranularCompress();}
  1698. template <class T>
  1699. inline TInt RArray<T>::Reserve(TInt aCount)
  1700. #line 5337
  1701. { return RArrayBase::DoReserve(aCount); }
  1702. template <class T>
  1703. inline void RArray<T>::SortSigned()
  1704. {HeapSortSigned();}
  1705. template <class T>
  1706. inline void RArray<T>::SortUnsigned()
  1707. {HeapSortUnsigned();}
  1708. template <class T>
  1709. inline void RArray<T>::Sort(TLinearOrder<T> anOrder)
  1710. #line 5375
  1711. {HeapSort(anOrder);}
  1712. template <class T>
  1713. inline TArray<T> RArray<T>::Array() const
  1714. { return TArray<T>(GetCount,GetElementPtr,(const CBase*)this); }
  1715. inline RArray<TInt>::RArray()
  1716. : RPointerArrayBase()
  1717. {}
  1718. inline RArray<TInt>::RArray(TInt aGranularity)
  1719. : RPointerArrayBase(aGranularity)
  1720. #line 5417
  1721. {}
  1722. #line 5437
  1723. inline RArray<TInt>::RArray(TInt aMinGrowBy, TInt aFactor)
  1724. : RPointerArrayBase(aMinGrowBy, aFactor)
  1725. {}
  1726. inline void RArray<TInt>::Close()
  1727. {RPointerArrayBase::Close();}
  1728. inline TInt RArray<TInt>::Count() const
  1729. { return RPointerArrayBase::Count(); }
  1730. inline const TInt& RArray<TInt>::operator[](TInt anIndex) const
  1731. #line 5484
  1732. {return (const TInt&)At(anIndex);}
  1733. inline TInt& RArray<TInt>::operator[](TInt anIndex)
  1734. #line 5507
  1735. {return (TInt&)At(anIndex);}
  1736. inline TInt RArray<TInt>::Append(TInt anEntry)
  1737. #line 5521
  1738. { return RPointerArrayBase::Append((const TAny*)anEntry); }
  1739. inline TInt RArray<TInt>::Insert(TInt anEntry, TInt aPos)
  1740. #line 5541
  1741. { return RPointerArrayBase::Insert((const TAny*)anEntry,aPos); }
  1742. inline void RArray<TInt>::Remove(TInt anIndex)
  1743. #line 5558
  1744. {RPointerArrayBase::Remove(anIndex);}
  1745. inline void RArray<TInt>::Compress()
  1746. {RPointerArrayBase::Compress();}
  1747. inline void RArray<TInt>::Reset()
  1748. #line 5586
  1749. {RPointerArrayBase::Reset();}
  1750. inline TInt RArray<TInt>::Find(TInt anEntry) const
  1751. #line 5604
  1752. { return RPointerArrayBase::Find((const TAny*)anEntry); }
  1753. inline TInt RArray<TInt>::FindInOrder(TInt anEntry) const
  1754. #line 5621
  1755. { return RPointerArrayBase::FindIsqSigned(anEntry); }
  1756. inline TInt RArray<TInt>::FindInOrder(TInt anEntry, TInt& anIndex) const
  1757. #line 5644
  1758. { return RPointerArrayBase::BinarySearchSigned(anEntry,anIndex); }
  1759. inline TInt RArray<TInt>::SpecificFindInOrder(TInt anEntry, TInt aMode) const
  1760. #line 5675
  1761. { return RPointerArrayBase::FindIsqSigned(anEntry,aMode); }
  1762. inline TInt RArray<TInt>::SpecificFindInOrder(TInt anEntry, TInt& anIndex, TInt aMode) const
  1763. #line 5713
  1764. { return RPointerArrayBase::BinarySearchSigned(anEntry,anIndex,aMode); }
  1765. inline TInt RArray<TInt>::InsertInOrder(TInt anEntry)
  1766. #line 5735
  1767. { return RPointerArrayBase::InsertIsqSigned(anEntry,EFalse); }
  1768. inline TInt RArray<TInt>::InsertInOrderAllowRepeats(TInt anEntry)
  1769. #line 5758
  1770. { return RPointerArrayBase::InsertIsqSigned(anEntry,ETrue); }
  1771. inline RArray<TInt>::RArray(TInt* aEntries, TInt aCount)
  1772. : RPointerArrayBase((TAny**)aEntries, aCount)
  1773. #line 5781
  1774. {}
  1775. inline void RArray<TInt>::GranularCompress()
  1776. #line 5792
  1777. {RPointerArrayBase::GranularCompress();}
  1778. inline TInt RArray<TInt>::Reserve(TInt aCount)
  1779. #line 5810
  1780. { return RPointerArrayBase::DoReserve(aCount); }
  1781. inline void RArray<TInt>::Sort()
  1782. { HeapSortSigned(); }
  1783. inline TArray<TInt> RArray<TInt>::Array() const
  1784. { return TArray<TInt>(GetCount,GetElementPtr,(const CBase*)this); }
  1785. inline RArray<TUint>::RArray()
  1786. : RPointerArrayBase()
  1787. #line 5847
  1788. {}
  1789. inline RArray<TUint>::RArray(TInt aGranularity)
  1790. : RPointerArrayBase(aGranularity)
  1791. #line 5863
  1792. {}
  1793. #line 5883
  1794. inline RArray<TUint>::RArray(TInt aMinGrowBy, TInt aFactor)
  1795. : RPointerArrayBase(aMinGrowBy, aFactor)
  1796. {}
  1797. inline void RArray<TUint>::Close()
  1798. {RPointerArrayBase::Close();}
  1799. inline TInt RArray<TUint>::Count() const
  1800. {return RPointerArrayBase::Count(); }
  1801. inline const TUint& RArray<TUint>::operator[](TInt anIndex) const
  1802. #line 5930
  1803. {return (const TUint&)At(anIndex);}
  1804. inline TUint& RArray<TUint>::operator[](TInt anIndex)
  1805. #line 5953
  1806. {return (TUint&)At(anIndex);}
  1807. inline TInt RArray<TUint>::Append(TUint anEntry)
  1808. { return RPointerArrayBase::Append((const TAny*)anEntry); }
  1809. inline TInt RArray<TUint>::Insert(TUint anEntry, TInt aPos)
  1810. #line 5987
  1811. { return RPointerArrayBase::Insert((const TAny*)anEntry,aPos); }
  1812. inline void RArray<TUint>::Remove(TInt anIndex)
  1813. #line 6005
  1814. {RPointerArrayBase::Remove(anIndex);}
  1815. inline void RArray<TUint>::Compress()
  1816. {RPointerArrayBase::Compress();}
  1817. inline void RArray<TUint>::Reset()
  1818. #line 6033
  1819. {RPointerArrayBase::Reset();}
  1820. inline TInt RArray<TUint>::Find(TUint anEntry) const
  1821. #line 6051
  1822. { return RPointerArrayBase::Find((const TAny*)anEntry); }
  1823. inline TInt RArray<TUint>::FindInOrder(TUint anEntry) const
  1824. #line 6070
  1825. { return RPointerArrayBase::FindIsqUnsigned(anEntry); }
  1826. inline TInt RArray<TUint>::FindInOrder(TUint anEntry, TInt& anIndex) const
  1827. #line 6098
  1828. { return RPointerArrayBase::BinarySearchUnsigned(anEntry,anIndex); }
  1829. inline TInt RArray<TUint>::SpecificFindInOrder(TUint anEntry, TInt aMode) const
  1830. #line 6128
  1831. { return RPointerArrayBase::FindIsqUnsigned(anEntry,aMode); }
  1832. inline TInt RArray<TUint>::SpecificFindInOrder(TUint anEntry, TInt& anIndex, TInt aMode) const
  1833. #line 6163
  1834. { return RPointerArrayBase::BinarySearchUnsigned(anEntry,anIndex,aMode); }
  1835. inline TInt RArray<TUint>::InsertInOrder(TUint anEntry)
  1836. #line 6185
  1837. { return RPointerArrayBase::InsertIsqUnsigned(anEntry,EFalse); }
  1838. inline TInt RArray<TUint>::InsertInOrderAllowRepeats(TUint anEntry)
  1839. #line 6208
  1840. { return RPointerArrayBase::InsertIsqUnsigned(anEntry,ETrue); }
  1841. inline RArray<TUint>::RArray(TUint* aEntries, TInt aCount)
  1842. : RPointerArrayBase((TAny**)aEntries, aCount)
  1843. #line 6231
  1844. {}
  1845. inline void RArray<TUint>::GranularCompress()
  1846. #line 6244
  1847. {RPointerArrayBase::GranularCompress();}
  1848. inline TInt RArray<TUint>::Reserve(TInt aCount)
  1849. #line 6262
  1850. { return RPointerArrayBase::DoReserve(aCount); }
  1851. inline void RArray<TUint>::Sort()
  1852. { HeapSortUnsigned(); }
  1853. inline TArray<TUint> RArray<TUint>::Array() const
  1854. { return TArray<TUint>(GetCount,GetElementPtr,(const CBase*)this); }
  1855. #line 6293
  1856. inline void TIpcArgs::Set(TInt,TNothing)
  1857. {}
  1858. #line 6307
  1859. inline void TIpcArgs::Set(TInt aIndex,TInt aValue)
  1860. {
  1861. iArgs[aIndex] = aValue;
  1862. iFlags |= EUnspecified<<(aIndex*KBitsPerType);
  1863. }
  1864. #line 6324
  1865. inline void TIpcArgs::Set(TInt aIndex,const TAny* aValue)
  1866. {
  1867. iArgs[aIndex] = (TInt)aValue;
  1868. iFlags |= EUnspecified<<(aIndex*KBitsPerType);
  1869. }
  1870. #line 6341
  1871. inline void TIpcArgs::Set(TInt aIndex,RHandleBase aValue)
  1872. {
  1873. iArgs[aIndex] = (TInt)aValue.Handle();
  1874. iFlags |= EHandle<<(aIndex*KBitsPerType);
  1875. }
  1876. #line 6358
  1877. inline void TIpcArgs::Set(TInt aIndex,const TDesC8* aValue)
  1878. {
  1879. iArgs[aIndex] = (TInt)aValue;
  1880. iFlags |= EDesC8<<(aIndex*KBitsPerType);
  1881. }
  1882. #line 6377
  1883. inline void TIpcArgs::Set(TInt aIndex,const TDesC16* aValue)
  1884. {
  1885. iArgs[aIndex] = (TInt)aValue;
  1886. iFlags |= EDesC16<<(aIndex*KBitsPerType);
  1887. }
  1888. #line 6396
  1889. inline void TIpcArgs::Set(TInt aIndex,TDes8* aValue)
  1890. {
  1891. iArgs[aIndex] = (TInt)aValue;
  1892. iFlags |= EDes8<<(aIndex*KBitsPerType);
  1893. }
  1894. #line 6415
  1895. inline void TIpcArgs::Set(TInt aIndex,TDes16* aValue)
  1896. {
  1897. iArgs[aIndex] = (TInt)aValue;
  1898. iFlags |= EDes16<<(aIndex*KBitsPerType);
  1899. }
  1900. inline TIpcArgs::TArgType TIpcArgs::Type(TNothing)
  1901. { return EUnspecified; }
  1902. inline TIpcArgs::TArgType TIpcArgs::Type(TInt)
  1903. { return EUnspecified; }
  1904. inline TIpcArgs::TArgType TIpcArgs::Type(const TAny*)
  1905. { return EUnspecified; }
  1906. inline TIpcArgs::TArgType TIpcArgs::Type(RHandleBase)
  1907. { return EHandle; }
  1908. inline TIpcArgs::TArgType TIpcArgs::Type(const TDesC8*)
  1909. { return EDesC8; }
  1910. inline TIpcArgs::TArgType TIpcArgs::Type(const TDesC16*)
  1911. { return EDesC16; }
  1912. inline TIpcArgs::TArgType TIpcArgs::Type(TDes8*)
  1913. { return EDes8; }
  1914. inline TIpcArgs::TArgType TIpcArgs::Type(TDes16*)
  1915. { return EDes16; }
  1916. inline void TIpcArgs::Assign(TInt&,TIpcArgs::TNothing)
  1917. {}
  1918. inline void TIpcArgs::Assign(TInt& aArg,TInt aValue)
  1919. { aArg = aValue; }
  1920. inline void TIpcArgs::Assign(TInt& aArg,const TAny* aValue)
  1921. { aArg = (TInt)aValue; }
  1922. inline void TIpcArgs::Assign(TInt& aArg,RHandleBase aValue)
  1923. { aArg = (TInt)aValue.Handle(); }
  1924. inline void TIpcArgs::Assign(TInt& aArg,const TDesC8* aValue)
  1925. { aArg = (TInt)aValue; }
  1926. inline void TIpcArgs::Assign(TInt& aArg,const TDesC16* aValue)
  1927. { aArg = (TInt)aValue; }
  1928. inline void TIpcArgs::Assign(TInt& aArg,TDes8* aValue)
  1929. { aArg = (TInt)aValue; }
  1930. inline void TIpcArgs::Assign(TInt& aArg,TDes16* aValue)
  1931. { aArg = (TInt)aValue; }
  1932. inline SInt64::SInt64()
  1933. {}
  1934. inline SInt64::SInt64(Int64 a)
  1935. {
  1936. iData[0] = (TUint32)((Uint64)a);
  1937. iData[1] = (TUint32)(((Uint64)a)>>32);
  1938. }
  1939. inline SInt64& SInt64::operator=(Int64 a)
  1940. {
  1941. iData[0] = (TUint32)((Uint64)a);
  1942. iData[1] = (TUint32)(((Uint64)a)>>32);
  1943. return *this;
  1944. }
  1945. inline SInt64::operator Int64() const
  1946. {
  1947. Int64 x;
  1948. TUint32* px = (TUint32*)&x;
  1949. px[0] = iData[0];
  1950. px[1] = iData[1];
  1951. return x;
  1952. }
  1953. inline SUint64::SUint64()
  1954. {}
  1955. inline SUint64::SUint64(Uint64 a)
  1956. {
  1957. iData[0] = (TUint32)a;
  1958. iData[1] = (TUint32)(a>>32);
  1959. }
  1960. inline SUint64& SUint64::operator=(Uint64 a)
  1961. {
  1962. iData[0] = (TUint32)a;
  1963. iData[1] = (TUint32)(a>>32);
  1964. return *this;
  1965. }
  1966. inline SUint64::operator Uint64() const
  1967. {
  1968. Uint64 x;
  1969. TUint32* px = (TUint32*)&x;
  1970. px[0] = iData[0];
  1971. px[1] = iData[1];
  1972. return x;
  1973. }
  1974. inline SDouble::SDouble()
  1975. {}
  1976. inline SDouble::SDouble(TReal a)
  1977. {
  1978. const TUint32* pa = (const TUint32*)&a;
  1979. iData[0] = pa[0];
  1980. iData[1] = pa[1];
  1981. }
  1982. inline SDouble& SDouble::operator=(TReal a)
  1983. {
  1984. new (this) SDouble(a);
  1985. return *this;
  1986. }
  1987. inline SDouble::operator TReal() const
  1988. {
  1989. TReal x;
  1990. TUint32* px = (TUint32*)&x;
  1991. px[0] = iData[0];
  1992. px[1] = iData[1];
  1993. return x;
  1994. }
  1995. inline TSecureId::TSecureId()
  1996. {}
  1997. inline TSecureId::TSecureId(TUint32 aId)
  1998. : iId(aId) {}
  1999. inline TSecureId::operator TUint32() const
  2000. { return iId; }
  2001. inline TSecureId::TSecureId(TUid aId)
  2002. : iId(aId.iUid) {}
  2003. inline TSecureId::operator TUid() const
  2004. { return (TUid&)iId; }
  2005. inline const TSecureId* SSecureId::operator&() const
  2006. { return (const TSecureId*)this; }
  2007. inline SSecureId::operator const TSecureId&() const
  2008. { return (const TSecureId&)iId; }
  2009. inline SSecureId::operator TUint32() const
  2010. { return iId; }
  2011. inline SSecureId::operator TUid() const
  2012. { return (TUid&)iId; }
  2013. inline TVendorId::TVendorId()
  2014. {}
  2015. inline TVendorId::TVendorId(TUint32 aId)
  2016. : iId(aId) {}
  2017. inline TVendorId::operator TUint32() const
  2018. { return iId; }
  2019. inline TVendorId::TVendorId(TUid aId)
  2020. : iId(aId.iUid) {}
  2021. inline TVendorId::operator TUid() const
  2022. { return (TUid&)iId; }
  2023. inline const TVendorId* SVendorId::operator&() const
  2024. { return (const TVendorId*)this; }
  2025. inline SVendorId::operator const TVendorId&() const
  2026. { return (const TVendorId&)iId; }
  2027. inline SVendorId::operator TUint32() const
  2028. { return iId; }
  2029. inline SVendorId::operator TUid() const
  2030. { return (TUid&)iId; }
  2031. inline TCapabilitySet::TCapabilitySet()
  2032. {}
  2033. inline TCapabilitySet::TCapabilitySet(TCapability aCapability)
  2034. { new (this) TCapabilitySet(aCapability, aCapability); }
  2035. inline void TCapabilitySet::Set(TCapability aCapability)
  2036. { new (this) TCapabilitySet(aCapability, aCapability); }
  2037. inline void TCapabilitySet::Set(TCapability aCapability1, TCapability aCapability2)
  2038. { new (this) TCapabilitySet(aCapability1, aCapability2); }
  2039. inline TSecurityInfo::TSecurityInfo()
  2040. {}
  2041. inline TSecurityPolicy::TSecurityPolicy()
  2042. { new (this) TSecurityPolicy(EAlwaysFail); }
  2043. inline const TSecurityPolicy* TStaticSecurityPolicy::operator&() const
  2044. { return (const TSecurityPolicy*)this; }
  2045. inline TStaticSecurityPolicy::operator const TSecurityPolicy&() const
  2046. { return *(const TSecurityPolicy*)this; }
  2047. inline const TSecurityPolicy& TStaticSecurityPolicy::operator()() const
  2048. { return *(const TSecurityPolicy*)this; }
  2049. #line 6341 "C:\Symbian\9.1\S60_3rd\epoc32\include\e32cmn.h" /* stack depth 1 */
  2050. #line 2 "C:\gbtukmanpf01\NOK124\Courses\S60\05300-S60_C++_Introduction\Working\LabCode\Lab_05304-s2.cb1\starter\.generated\winscw_uid.cpp" /* stack depth 0 */
  2051. #pragma data_seg(".SYMBIAN")
  2052. #line 4
  2053. TEmulatorImageHeader uid={{0x1000007a,0x100039CE,0x08B9993D},EPriorityForeground,{0x08B9993D,0x00000000,{0x00000000u,0x00000000u}},0,0,0x00000000,0};
  2054. #pragma data_seg()