winamp/Src/nprt_plugin/gecko/1.8/win/include/nsITraceRefcnt.h
2024-09-24 14:54:57 +02:00

157 lines
6.5 KiB
C++

/*
* DO NOT EDIT. THIS FILE IS GENERATED FROM c:/mozilla/xpcom/base/nsITraceRefcnt.idl
*/
#ifndef __gen_nsITraceRefcnt_h__
#define __gen_nsITraceRefcnt_h__
#ifndef __gen_nsISupports_h__
#include "nsISupports.h"
#endif
/* For IDL files that don't want to include root IDL files. */
#ifndef NS_NO_VTABLE
#define NS_NO_VTABLE
#endif
/* starting interface: nsITraceRefcnt */
#define NS_ITRACEREFCNT_IID_STR "273dc92f-0fe6-4545-96a9-21be77828039"
#define NS_ITRACEREFCNT_IID \
{0x273dc92f, 0x0fe6, 0x4545, \
{ 0x96, 0xa9, 0x21, 0xbe, 0x77, 0x82, 0x80, 0x39 }}
/**
* nsITraceRefcnt is an interface between XPCOM Glue and XPCOM. Users should
* access the nsITraceRefcnt interface through the static class nsTraceRefcnt.
* @see nsTraceRefcnt.h
*
* @status UNDER_REVIEW
*/
class NS_NO_VTABLE nsITraceRefcnt : public nsISupports {
public:
NS_DEFINE_STATIC_IID_ACCESSOR(NS_ITRACEREFCNT_IID)
/* void logAddRef (in voidPtr aPtr, in nsrefcnt aNewRefcnt, in string aTypeName, in unsigned long aInstanceSize); */
NS_IMETHOD LogAddRef(void * aPtr, nsrefcnt aNewRefcnt, const char *aTypeName, PRUint32 aInstanceSize) = 0;
/* void logRelease (in voidPtr aPtr, in nsrefcnt aNewRefcnt, in string aTypeName); */
NS_IMETHOD LogRelease(void * aPtr, nsrefcnt aNewRefcnt, const char *aTypeName) = 0;
/* void logCtor (in voidPtr aPtr, in string aTypeName, in unsigned long aInstanceSize); */
NS_IMETHOD LogCtor(void * aPtr, const char *aTypeName, PRUint32 aInstanceSize) = 0;
/* void logDtor (in voidPtr aPtr, in string aTypeName, in unsigned long aInstanceSize); */
NS_IMETHOD LogDtor(void * aPtr, const char *aTypeName, PRUint32 aInstanceSize) = 0;
/* void logAddCOMPtr (in voidPtr aPtr, in nsISupports aObject); */
NS_IMETHOD LogAddCOMPtr(void * aPtr, nsISupports *aObject) = 0;
/* void logReleaseCOMPtr (in voidPtr aPtr, in nsISupports aObject); */
NS_IMETHOD LogReleaseCOMPtr(void * aPtr, nsISupports *aObject) = 0;
};
/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_NSITRACEREFCNT \
NS_IMETHOD LogAddRef(void * aPtr, nsrefcnt aNewRefcnt, const char *aTypeName, PRUint32 aInstanceSize); \
NS_IMETHOD LogRelease(void * aPtr, nsrefcnt aNewRefcnt, const char *aTypeName); \
NS_IMETHOD LogCtor(void * aPtr, const char *aTypeName, PRUint32 aInstanceSize); \
NS_IMETHOD LogDtor(void * aPtr, const char *aTypeName, PRUint32 aInstanceSize); \
NS_IMETHOD LogAddCOMPtr(void * aPtr, nsISupports *aObject); \
NS_IMETHOD LogReleaseCOMPtr(void * aPtr, nsISupports *aObject);
/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_NSITRACEREFCNT(_to) \
NS_IMETHOD LogAddRef(void * aPtr, nsrefcnt aNewRefcnt, const char *aTypeName, PRUint32 aInstanceSize) { return _to LogAddRef(aPtr, aNewRefcnt, aTypeName, aInstanceSize); } \
NS_IMETHOD LogRelease(void * aPtr, nsrefcnt aNewRefcnt, const char *aTypeName) { return _to LogRelease(aPtr, aNewRefcnt, aTypeName); } \
NS_IMETHOD LogCtor(void * aPtr, const char *aTypeName, PRUint32 aInstanceSize) { return _to LogCtor(aPtr, aTypeName, aInstanceSize); } \
NS_IMETHOD LogDtor(void * aPtr, const char *aTypeName, PRUint32 aInstanceSize) { return _to LogDtor(aPtr, aTypeName, aInstanceSize); } \
NS_IMETHOD LogAddCOMPtr(void * aPtr, nsISupports *aObject) { return _to LogAddCOMPtr(aPtr, aObject); } \
NS_IMETHOD LogReleaseCOMPtr(void * aPtr, nsISupports *aObject) { return _to LogReleaseCOMPtr(aPtr, aObject); }
/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_NSITRACEREFCNT(_to) \
NS_IMETHOD LogAddRef(void * aPtr, nsrefcnt aNewRefcnt, const char *aTypeName, PRUint32 aInstanceSize) { return !_to ? NS_ERROR_NULL_POINTER : _to->LogAddRef(aPtr, aNewRefcnt, aTypeName, aInstanceSize); } \
NS_IMETHOD LogRelease(void * aPtr, nsrefcnt aNewRefcnt, const char *aTypeName) { return !_to ? NS_ERROR_NULL_POINTER : _to->LogRelease(aPtr, aNewRefcnt, aTypeName); } \
NS_IMETHOD LogCtor(void * aPtr, const char *aTypeName, PRUint32 aInstanceSize) { return !_to ? NS_ERROR_NULL_POINTER : _to->LogCtor(aPtr, aTypeName, aInstanceSize); } \
NS_IMETHOD LogDtor(void * aPtr, const char *aTypeName, PRUint32 aInstanceSize) { return !_to ? NS_ERROR_NULL_POINTER : _to->LogDtor(aPtr, aTypeName, aInstanceSize); } \
NS_IMETHOD LogAddCOMPtr(void * aPtr, nsISupports *aObject) { return !_to ? NS_ERROR_NULL_POINTER : _to->LogAddCOMPtr(aPtr, aObject); } \
NS_IMETHOD LogReleaseCOMPtr(void * aPtr, nsISupports *aObject) { return !_to ? NS_ERROR_NULL_POINTER : _to->LogReleaseCOMPtr(aPtr, aObject); }
#if 0
/* Use the code below as a template for the implementation class for this interface. */
/* Header file */
class nsTraceRefcnt : public nsITraceRefcnt
{
public:
NS_DECL_ISUPPORTS
NS_DECL_NSITRACEREFCNT
nsTraceRefcnt();
private:
~nsTraceRefcnt();
protected:
/* additional members */
};
/* Implementation file */
NS_IMPL_ISUPPORTS1(nsTraceRefcnt, nsITraceRefcnt)
nsTraceRefcnt::nsTraceRefcnt()
{
/* member initializers and constructor code */
}
nsTraceRefcnt::~nsTraceRefcnt()
{
/* destructor code */
}
/* void logAddRef (in voidPtr aPtr, in nsrefcnt aNewRefcnt, in string aTypeName, in unsigned long aInstanceSize); */
NS_IMETHODIMP nsTraceRefcnt::LogAddRef(void * aPtr, nsrefcnt aNewRefcnt, const char *aTypeName, PRUint32 aInstanceSize)
{
return NS_ERROR_NOT_IMPLEMENTED;
}
/* void logRelease (in voidPtr aPtr, in nsrefcnt aNewRefcnt, in string aTypeName); */
NS_IMETHODIMP nsTraceRefcnt::LogRelease(void * aPtr, nsrefcnt aNewRefcnt, const char *aTypeName)
{
return NS_ERROR_NOT_IMPLEMENTED;
}
/* void logCtor (in voidPtr aPtr, in string aTypeName, in unsigned long aInstanceSize); */
NS_IMETHODIMP nsTraceRefcnt::LogCtor(void * aPtr, const char *aTypeName, PRUint32 aInstanceSize)
{
return NS_ERROR_NOT_IMPLEMENTED;
}
/* void logDtor (in voidPtr aPtr, in string aTypeName, in unsigned long aInstanceSize); */
NS_IMETHODIMP nsTraceRefcnt::LogDtor(void * aPtr, const char *aTypeName, PRUint32 aInstanceSize)
{
return NS_ERROR_NOT_IMPLEMENTED;
}
/* void logAddCOMPtr (in voidPtr aPtr, in nsISupports aObject); */
NS_IMETHODIMP nsTraceRefcnt::LogAddCOMPtr(void * aPtr, nsISupports *aObject)
{
return NS_ERROR_NOT_IMPLEMENTED;
}
/* void logReleaseCOMPtr (in voidPtr aPtr, in nsISupports aObject); */
NS_IMETHODIMP nsTraceRefcnt::LogReleaseCOMPtr(void * aPtr, nsISupports *aObject)
{
return NS_ERROR_NOT_IMPLEMENTED;
}
/* End of implementation class template. */
#endif
#endif /* __gen_nsITraceRefcnt_h__ */