1 /* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ 2 /* vim: set ts=8 sts=2 et sw=2 tw=80: */ 3 /* This Source Code Form is subject to the terms of the Mozilla Public 4 * License, v. 2.0. If a copy of the MPL was not distributed with this 5 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 6 7 #ifndef nsXPCOMCID_h__ 8 #define nsXPCOMCID_h__ 9 10 /** 11 * XPCOM Directory Service Contract ID 12 * The directory service provides ways to obtain file system locations. The 13 * directory service is a singleton. 14 * 15 * This contract supports the nsIDirectoryService and the nsIProperties 16 * interfaces. 17 * 18 */ 19 #define NS_DIRECTORY_SERVICE_CONTRACTID "@mozilla.org/file/directory_service;1" 20 21 /** 22 * XPCOM File 23 * The file abstraction provides ways to obtain and access files and 24 * directories located on the local system. 25 * 26 * This contract supports the nsIFile interface. 27 * This contract may also support platform specific interfaces such as 28 * nsILocalFileMac on platforms where additional interfaces are required. 29 * 30 */ 31 #define NS_LOCAL_FILE_CONTRACTID "@mozilla.org/file/local;1" 32 33 /** 34 * XPCOM Category Manager Contract ID 35 * The contract supports the nsICategoryManager interface. The 36 * category manager is a singleton. 37 * The "enumerateCategory" method of nsICategoryManager will return an object 38 * that implements nsIUTF8StringEnumerator. In addition, the enumerator will 39 * return the entries in sorted order (sorted by byte comparison). 40 */ 41 #define NS_CATEGORYMANAGER_CONTRACTID "@mozilla.org/categorymanager;1" 42 43 /** 44 * XPCOM Properties Object Contract ID 45 * Simple mapping object which supports the nsIProperties interface. 46 */ 47 #define NS_PROPERTIES_CONTRACTID "@mozilla.org/properties;1" 48 49 /** 50 * XPCOM Array Object ContractID 51 * Simple array implementation which supports the nsIArray and 52 * nsIMutableArray interfaces. 53 */ 54 #define NS_ARRAY_CONTRACTID "@mozilla.org/array;1" 55 56 /** 57 * Observer Service ContractID 58 * The observer service implements the global nsIObserverService object. 59 * It should be used from the main thread only. 60 */ 61 #define NS_OBSERVERSERVICE_CONTRACTID "@mozilla.org/observer-service;1" 62 63 /** 64 * IO utilities service contract id. 65 * This guarantees implementation of nsIIOUtil. Usable from any thread. 66 */ 67 #define NS_IOUTIL_CONTRACTID "@mozilla.org/io-util;1" 68 69 /** 70 * Memory reporter service CID 71 */ 72 #define NS_MEMORY_REPORTER_MANAGER_CONTRACTID \ 73 "@mozilla.org/memory-reporter-manager;1" 74 75 /** 76 * Memory info dumper service CID 77 */ 78 #define NS_MEMORY_INFO_DUMPER_CONTRACTID "@mozilla.org/memory-info-dumper;1" 79 80 /** 81 * nsMessageLoop contract id 82 */ 83 #define NS_MESSAGE_LOOP_CONTRACTID "@mozilla.org/message-loop;1" 84 85 #define NS_COMPARTMENT_INFO_CONTRACTID "@mozilla.org/compartment-info;1" 86 87 /** 88 * The following are the CIDs and Contract IDs of the nsISupports wrappers for 89 * primative types. 90 */ 91 #define NS_SUPPORTS_ID_CID \ 92 { \ 93 0xacf8dc40, 0x4a25, 0x11d3, { \ 94 0x98, 0x90, 0x0, 0x60, 0x8, 0x96, 0x24, 0x22 \ 95 } \ 96 } 97 #define NS_SUPPORTS_ID_CONTRACTID "@mozilla.org/supports-id;1" 98 99 #define NS_SUPPORTS_CSTRING_CID \ 100 { \ 101 0xacf8dc41, 0x4a25, 0x11d3, { \ 102 0x98, 0x90, 0x0, 0x60, 0x8, 0x96, 0x24, 0x22 \ 103 } \ 104 } 105 #define NS_SUPPORTS_CSTRING_CONTRACTID "@mozilla.org/supports-cstring;1" 106 107 #define NS_SUPPORTS_STRING_CID \ 108 { \ 109 0xacf8dc42, 0x4a25, 0x11d3, { \ 110 0x98, 0x90, 0x0, 0x60, 0x8, 0x96, 0x24, 0x22 \ 111 } \ 112 } 113 #define NS_SUPPORTS_STRING_CONTRACTID "@mozilla.org/supports-string;1" 114 115 #define NS_SUPPORTS_PRBOOL_CID \ 116 { \ 117 0xacf8dc43, 0x4a25, 0x11d3, { \ 118 0x98, 0x90, 0x0, 0x60, 0x8, 0x96, 0x24, 0x22 \ 119 } \ 120 } 121 #define NS_SUPPORTS_PRBOOL_CONTRACTID "@mozilla.org/supports-PRBool;1" 122 123 #define NS_SUPPORTS_PRUINT8_CID \ 124 { \ 125 0xacf8dc44, 0x4a25, 0x11d3, { \ 126 0x98, 0x90, 0x0, 0x60, 0x8, 0x96, 0x24, 0x22 \ 127 } \ 128 } 129 #define NS_SUPPORTS_PRUINT8_CONTRACTID "@mozilla.org/supports-PRUint8;1" 130 131 #define NS_SUPPORTS_PRUINT16_CID \ 132 { \ 133 0xacf8dc46, 0x4a25, 0x11d3, { \ 134 0x98, 0x90, 0x0, 0x60, 0x8, 0x96, 0x24, 0x22 \ 135 } \ 136 } 137 #define NS_SUPPORTS_PRUINT16_CONTRACTID "@mozilla.org/supports-PRUint16;1" 138 139 #define NS_SUPPORTS_PRUINT32_CID \ 140 { \ 141 0xacf8dc47, 0x4a25, 0x11d3, { \ 142 0x98, 0x90, 0x0, 0x60, 0x8, 0x96, 0x24, 0x22 \ 143 } \ 144 } 145 #define NS_SUPPORTS_PRUINT32_CONTRACTID "@mozilla.org/supports-PRUint32;1" 146 147 #define NS_SUPPORTS_PRUINT64_CID \ 148 { \ 149 0xacf8dc48, 0x4a25, 0x11d3, { \ 150 0x98, 0x90, 0x0, 0x60, 0x8, 0x96, 0x24, 0x22 \ 151 } \ 152 } 153 #define NS_SUPPORTS_PRUINT64_CONTRACTID "@mozilla.org/supports-PRUint64;1" 154 155 #define NS_SUPPORTS_PRTIME_CID \ 156 { \ 157 0xacf8dc49, 0x4a25, 0x11d3, { \ 158 0x98, 0x90, 0x0, 0x60, 0x8, 0x96, 0x24, 0x22 \ 159 } \ 160 } 161 #define NS_SUPPORTS_PRTIME_CONTRACTID "@mozilla.org/supports-PRTime;1" 162 163 #define NS_SUPPORTS_CHAR_CID \ 164 { \ 165 0xacf8dc4a, 0x4a25, 0x11d3, { \ 166 0x98, 0x90, 0x0, 0x60, 0x8, 0x96, 0x24, 0x22 \ 167 } \ 168 } 169 #define NS_SUPPORTS_CHAR_CONTRACTID "@mozilla.org/supports-char;1" 170 171 #define NS_SUPPORTS_PRINT16_CID \ 172 { \ 173 0xacf8dc4b, 0x4a25, 0x11d3, { \ 174 0x98, 0x90, 0x0, 0x60, 0x8, 0x96, 0x24, 0x22 \ 175 } \ 176 } 177 #define NS_SUPPORTS_PRINT16_CONTRACTID "@mozilla.org/supports-PRInt16;1" 178 179 #define NS_SUPPORTS_PRINT32_CID \ 180 { \ 181 0xacf8dc4c, 0x4a25, 0x11d3, { \ 182 0x98, 0x90, 0x0, 0x60, 0x8, 0x96, 0x24, 0x22 \ 183 } \ 184 } 185 #define NS_SUPPORTS_PRINT32_CONTRACTID "@mozilla.org/supports-PRInt32;1" 186 187 #define NS_SUPPORTS_PRINT64_CID \ 188 { \ 189 0xacf8dc4d, 0x4a25, 0x11d3, { \ 190 0x98, 0x90, 0x0, 0x60, 0x8, 0x96, 0x24, 0x22 \ 191 } \ 192 } 193 #define NS_SUPPORTS_PRINT64_CONTRACTID "@mozilla.org/supports-PRInt64;1" 194 195 #define NS_SUPPORTS_FLOAT_CID \ 196 { \ 197 0xcbf86870, 0x4ac0, 0x11d3, { \ 198 0xba, 0xea, 0x0, 0x80, 0x5f, 0x8a, 0x5d, 0xd7 \ 199 } \ 200 } 201 #define NS_SUPPORTS_FLOAT_CONTRACTID "@mozilla.org/supports-float;1" 202 203 #define NS_SUPPORTS_DOUBLE_CID \ 204 { \ 205 0xcbf86871, 0x4ac0, 0x11d3, { \ 206 0xba, 0xea, 0x0, 0x80, 0x5f, 0x8a, 0x5d, 0xd7 \ 207 } \ 208 } 209 #define NS_SUPPORTS_DOUBLE_CONTRACTID "@mozilla.org/supports-double;1" 210 211 #define NS_SUPPORTS_INTERFACE_POINTER_CID \ 212 { \ 213 0xA99FEBBA, 0x1DD1, 0x11B2, { \ 214 0xA9, 0x43, 0xB0, 0x23, 0x34, 0xA6, 0xD0, 0x83 \ 215 } \ 216 } 217 #define NS_SUPPORTS_INTERFACE_POINTER_CONTRACTID \ 218 "@mozilla.org/supports-interface-pointer;1" 219 220 #endif 221