Back to index

lightning-sunbird  0.9+nobinonly
Public Member Functions | Public Attributes | Private Member Functions
nsIClassInfoImpl< T > Class Template Reference

#include <XPConnect.h>

Inheritance diagram for nsIClassInfoImpl< T >:
Inheritance graph
[legend]
Collaboration diagram for nsIClassInfoImpl< T >:
Collaboration graph
[legend]

List of all members.

Public Member Functions

void getInterfaces (out PRUint32 count,[array, size_is(count), retval] out nsIIDPtr array)
 Get an ordered list of the interface ids that instances of the class promise to implement.
nsISupports getHelperForLanguage (in PRUint32 language)
 Get a language mapping specific helper object that may assist in using objects of this class in a specific lanaguage.

Public Attributes

readonly attribute string contractID
 A contract ID through which an instance of this class can be created (or accessed as a service, if |flags & SINGLETON|), or null.
readonly attribute string classDescription
 A human readable string naming the class, or null.
readonly attribute nsCIDPtr classID
 A class ID through which an instance of this class can be created (or accessed as a service, if |flags & SINGLETON|), or null.
readonly attribute PRUint32 implementationLanguage
 Return language type from list in nsIProgrammingLanguage.
const PRUint32 SINGLETON = 1 << 0
 Bitflags for 'flags' attribute.
const PRUint32 THREADSAFE = 1 << 1
const PRUint32 MAIN_THREAD_ONLY = 1 << 2
const PRUint32 DOM_OBJECT = 1 << 3
const PRUint32 PLUGIN_OBJECT = 1 << 4
const PRUint32 EAGER_CLASSINFO = 1 << 5
const PRUint32 CONTENT_NODE = 1 << 6
 'flags' attribute bitflag: whether objects of this type implement nsIContent.
const PRUint32 RESERVED = 1 << 31
readonly attribute PRUint32 flags
readonly attribute nsCID classIDNoAlloc
 Also a class ID through which an instance of this class can be created (or accessed as a service, if |flags & SINGLETON|).

Private Member Functions

NS_IMETHODIMP GetFlags (PRUint32 *aFlags)
NS_IMETHODIMP GetImplementationLanguage (PRUint32 *aImplementationLanguage)
NS_IMETHODIMP GetInterfaces (PRUint32 *count, nsIID ***array)
NS_IMETHODIMP GetHelperForLanguage (PRUint32 language, nsISupports **_retval)
NS_IMETHODIMP GetContractID (char **aContractID)
NS_IMETHODIMP GetClassDescription (char **aClassDescription)
NS_IMETHODIMP GetClassID (nsCID **aClassID)
NS_IMETHODIMP GetClassIDNoAlloc (nsCID *aClassIDNoAlloc)

Detailed Description

template<class T>
class nsIClassInfoImpl< T >

Definition at line 60 of file XPConnect.h.


Member Function Documentation

template<class T>
NS_IMETHODIMP nsIClassInfoImpl< T >::GetClassDescription ( char **  aClassDescription) [inline, private]

Definition at line 79 of file XPConnect.h.

template<class T>
NS_IMETHODIMP nsIClassInfoImpl< T >::GetClassID ( nsCID **  aClassID) [inline, private]

Definition at line 81 of file XPConnect.h.

template<class T>
NS_IMETHODIMP nsIClassInfoImpl< T >::GetClassIDNoAlloc ( nsCID aClassIDNoAlloc) [inline, private]

Definition at line 83 of file XPConnect.h.

template<class T>
NS_IMETHODIMP nsIClassInfoImpl< T >::GetContractID ( char **  aContractID) [inline, private]

Definition at line 77 of file XPConnect.h.

template<class T>
NS_IMETHODIMP nsIClassInfoImpl< T >::GetFlags ( PRUint32 aFlags) [inline, private]

Definition at line 62 of file XPConnect.h.

nsISupports nsIClassInfo::getHelperForLanguage ( in PRUint32  language) [inherited]

Get a language mapping specific helper object that may assist in using objects of this class in a specific lanaguage.

For instance, if asked for the helper for nsIProgrammingLanguage::JAVASCRIPT this might return an object that can be QI'd into the nsIXPCScriptable interface to assist XPConnect in supplying JavaScript specific behavior to callers of the instance object.

see: nsIProgrammingLanguage.idl

Should return null if no helper available for given language.

template<class T>
NS_IMETHODIMP nsIClassInfoImpl< T >::GetHelperForLanguage ( PRUint32  language,
nsISupports **  _retval 
) [inline, private]

Definition at line 75 of file XPConnect.h.

template<class T>
NS_IMETHODIMP nsIClassInfoImpl< T >::GetImplementationLanguage ( PRUint32 aImplementationLanguage) [inline, private]

Definition at line 67 of file XPConnect.h.

    {
        *aImplementationLanguage = nsIProgrammingLanguage::CPLUSPLUS;
        return NS_OK;
    }
void nsIClassInfo::getInterfaces ( out PRUint32  count,
[array, size_is(count), retval] out nsIIDPtr  array 
) [inherited]

Get an ordered list of the interface ids that instances of the class promise to implement.

Note that nsISupports is an implicit member of any such list and need not be included.

Should set *count = 0 and *array = null and return NS_OK if getting the list is not supported.

template<class T>
NS_IMETHODIMP nsIClassInfoImpl< T >::GetInterfaces ( PRUint32 count,
nsIID ***  array 
) [inline, private]

Definition at line 73 of file XPConnect.h.


Member Data Documentation

A human readable string naming the class, or null.

Definition at line 86 of file nsIClassInfo.idl.

readonly attribute nsCIDPtr nsIClassInfo::classID [inherited]

A class ID through which an instance of this class can be created (or accessed as a service, if |flags & SINGLETON|), or null.

Definition at line 92 of file nsIClassInfo.idl.

Also a class ID through which an instance of this class can be created (or accessed as a service, if |flags & SINGLETON|).

If the class does not have a CID, it should return NS_ERROR_NOT_AVAILABLE. This attribute exists so C++ callers can avoid allocating and freeing a CID, as would happen if they used classID.

Definition at line 130 of file nsIClassInfo.idl.

'flags' attribute bitflag: whether objects of this type implement nsIContent.

Definition at line 113 of file nsIClassInfo.idl.

A contract ID through which an instance of this class can be created (or accessed as a service, if |flags & SINGLETON|), or null.

Definition at line 81 of file nsIClassInfo.idl.

const PRUint32 nsIClassInfo::DOM_OBJECT = 1 << 3 [inherited]

Definition at line 106 of file nsIClassInfo.idl.

Definition at line 108 of file nsIClassInfo.idl.

readonly attribute PRUint32 nsIClassInfo::flags [inherited]

Definition at line 121 of file nsIClassInfo.idl.

Return language type from list in nsIProgrammingLanguage.

Definition at line 98 of file nsIClassInfo.idl.

Definition at line 105 of file nsIClassInfo.idl.

Definition at line 107 of file nsIClassInfo.idl.

const PRUint32 nsIClassInfo::RESERVED = 1 << 31 [inherited]

Definition at line 118 of file nsIClassInfo.idl.

const PRUint32 nsIClassInfo::SINGLETON = 1 << 0 [inherited]

Bitflags for 'flags' attribute.

Definition at line 103 of file nsIClassInfo.idl.

const PRUint32 nsIClassInfo::THREADSAFE = 1 << 1 [inherited]

Definition at line 104 of file nsIClassInfo.idl.


The documentation for this class was generated from the following file: