gecko/xpcom/build/XPCOM.h
Chris Jones ext:(%20and%20Kyle%20Huey%20%3Ckhuey%40kylehuey.com%3E) 0bb511a3d7 Rollup of bug 645263 and bug 646259: Switch to mozilla:: sync primitives. r=cjones,dbaron,doublec,ehsan src=bsmedberg
Bug 645263, part 0: Count sync primitive ctor/dtors. r=dbaron
Bug 645263, part 1: Migrate content/media to mozilla:: sync primitives. r=doublec
Bug 645263, part 2: Migrate modules/plugin to mozilla:: sync primitives. sr=bsmedberg
Bug 645263, part 3: Migrate nsComponentManagerImpl to mozilla:: sync primitives. sr=bsmedberg
Bug 645263, part 4: Migrate everything else to mozilla:: sync primitives. r=dbaron
Bug 645263, part 5: Remove nsAutoLock.*. sr=bsmedberg
Bug 645263, part 6: Make editor test be nicer to deadlock detector. r=ehsan
Bug 645263, part 7: Disable tracemalloc backtraces for xpcshell tests. r=dbaron
Bug 646259: Fix nsCacheService to use a CondVar for notifying. r=cjones
2011-03-31 23:29:02 -05:00

194 lines
4.7 KiB
C

#ifndef mozilla_XPCOM_h
#define mozilla_XPCOM_h
// NOTE: the following headers are sorted topologically, not alphabetically.
// Do not reorder them without review from bsmedberg.
// system headers required by XPCOM headers
#include <string.h>
// core headers required by pretty much everything else
#include "nscore.h"
#include "nsXPCOMCID.h"
#include "nsXPCOM.h"
#include "nsError.h"
#include "nsDebug.h"
#include "nsMemory.h"
#include "nsTraceRefcnt.h"
#include "nsID.h"
#include "nsISupports.h"
#include "nsTArray.h"
#include "nsTPtrArray.h"
#include "nsTWeakRef.h"
#include "nsCOMPtr.h"
#include "nsCOMArray.h"
#ifndef MOZILLA_INTERNAL_API
#include "nsStringAPI.h"
#else
#include "nsString.h"
#include "nsReadableUtils.h"
#include "nsNativeCharsetUtils.h"
#endif
#include "nsISupportsUtils.h"
#include "nsISupportsImpl.h"
// core data structures
#include "nsTHashtable.h"
#include "nsHashKeys.h"
#include "nsBaseHashtable.h"
#include "nsDataHashtable.h"
#include "nsInterfaceHashtable.h"
#include "nsClassHashtable.h"
#include "nsRefPtrHashtable.h"
#include "mozilla/TimeStamp.h"
// interfaces that inherit directly from nsISupports
#include "nsIArray.h"
#include "nsIAtom.h"
#include "nsIAtomService.h"
#include "nsICategoryManager.h"
#include "nsIClassInfo.h"
#include "nsICollection.h"
#include "nsIComponentManager.h"
#include "nsIConsoleListener.h"
#include "nsIConsoleMessage.h"
#include "nsIConsoleService.h"
#include "nsIDebug.h"
#include "nsIDirectoryEnumerator.h"
#include "nsIEnumerator.h"
#include "nsIEnvironment.h"
#include "nsIErrorService.h"
#include "nsIEventTarget.h"
#include "nsIException.h"
#include "nsIExceptionService.h"
#include "nsIFactory.h"
#include "nsIFastLoadFileControl.h"
#include "nsIFastLoadService.h"
#include "nsIFile.h"
#include "nsIHashable.h"
#include "nsIINIParser.h"
#include "nsIInputStream.h"
#include "nsIInterfaceRequestor.h"
#include "nsILineInputStream.h"
#include "nsIMemory.h"
#include "nsIMemoryReporter.h"
#include "nsIMutable.h"
#include "nsIObserver.h"
#include "nsIObserverService.h"
#include "nsIOutputStream.h"
#include "nsIProcess.h"
#include "nsIProgrammingLanguage.h"
#include "nsIProperties.h"
#include "nsIPropertyBag2.h"
#include "nsIRecyclingAllocator.h"
#include "nsIRunnable.h"
#include "nsISeekableStream.h"
#include "nsISerializable.h"
#include "nsIServiceManager.h"
#include "nsIScriptableInputStream.h"
#include "nsISimpleEnumerator.h"
#include "nsISimpleUnicharStreamFactory.h"
#include "nsIStreamBufferAccess.h"
#include "nsIStringEnumerator.h"
#include "nsIStorageStream.h"
#include "nsISupportsArray.h"
#include "nsISupportsIterators.h"
#include "nsISupportsPrimitives.h"
#include "nsISupportsPriority.h"
#include "nsIThreadManager.h"
#include "nsITimelineService.h"
#include "nsITimer.h"
#include "nsITraceRefcnt.h"
#include "nsIUUIDGenerator.h"
#include "nsIUnicharInputStream.h"
#include "nsIUnicharOutputStream.h"
#include "nsIUnicharLineInputStream.h"
#include "nsIVariant.h"
#include "nsIVersionComparator.h"
#include "nsIWritablePropertyBag2.h"
// interfaces that include something above
#include "nsIAsyncInputStream.h"
#include "nsIAsyncOutputStream.h"
#include "nsIBinaryInputStream.h"
#include "nsIBinaryOutputStream.h"
#include "nsIConverterInputStream.h"
#include "nsIConverterOutputStream.h"
#include "nsIDebug2.h"
#include "nsIInputStreamTee.h"
#include "nsILocalFile.h"
#include "nsIMultiplexInputStream.h"
#include "nsIMutableArray.h"
#include "nsIPersistentProperties2.h"
#include "nsIStringStream.h"
#include "nsIThread.h"
#include "nsIThreadPool.h"
// interfaces that include something above
#include "nsILocalFileWin.h"
#include "nsIObjectInputStream.h"
#include "nsIObjectOutputStream.h"
#include "nsIPipe.h"
#ifdef XP_MACOSX
#include "nsILocalFileMac.h"
#include "nsIMacUtils.h"
#endif
#ifdef XP_OS2
#include "nsILocalFileOS2.h"
#endif
// xpcom/glue utility headers
#include "nsComponentManagerUtils.h"
#include "nsServiceManagerUtils.h"
#include "nsIWeakReferenceUtils.h"
#include "nsWeakReference.h"
#include "nsArrayEnumerator.h"
#include "nsArrayUtils.h"
#include "nsCRTGlue.h"
#include "nsCycleCollectionParticipant.h"
#include "nsDeque.h"
#include "nsEnumeratorUtils.h"
#include "nsIClassInfoImpl.h"
#include "mozilla/ModuleUtils.h"
#include "nsIInterfaceRequestorUtils.h"
#include "nsINIParser.h"
#include "nsProxyRelease.h"
#include "nsTObserverArray.h"
#include "nsTextFormatter.h"
#include "nsThreadUtils.h"
#include "nsVersionComparator.h"
#include "nsXPTCUtils.h"
// xpcom/base utility headers
#include "nsAgg.h"
#include "nsAutoRef.h"
#include "nsInterfaceRequestorAgg.h"
// xpcom/io utility headers
#include "nsAppDirectoryServiceDefs.h"
#include "nsDirectoryServiceDefs.h"
#include "nsDirectoryServiceUtils.h"
#endif // mozilla_XPCOM_h