Logo Search packages:      
Sourcecode: virtualbox-ose version File versions

ipcIService Interface Reference

import "ipcIService.idl";

Inheritance diagram for ipcIService:

nsISupports

List of all members.


Detailed Description

ipcIService

the IPC service provides the means to communicate with an external IPC daemon and/or other mozilla-based applications on the same physical system. the IPC daemon hosts modules (some builtin and others dynamically loaded) with which applications may interact.

at application startup, the IPC service will attempt to establish a connection with the IPC daemon. the IPC daemon will be automatically started if necessary. when a connection has been established, the IPC service will enumerate the "ipc-startup-category" and broadcast an "ipc-startup" notification using the observer service.

when the connection to the IPC daemon is closed, an "ipc-shutdown" notification will be broadcast.

each client has a name. the client name need not be unique across all clients, but it is usually good if it is. the IPC service does not require unique names. instead, the IPC daemon assigns each client a unique ID that is good for the current "session." clients can query other clients by name or by ID. the IPC service supports forwarding messages from one client to another via the IPC daemon.

for performance reasons, this system should not be used to transfer large amounts of data. instead, applications may choose to utilize shared memory, and rely on the IPC service for synchronization and small message transfer only.

Definition at line 73 of file ipcIService.idl.


Public Member Functions

void addClientObserver (in ipcIClientObserver aObserver)
void addName (in string aName)
boolean clientExists (in unsigned long aClientID)
void defineTarget (in nsIDRef aTarget, in ipcIMessageObserver aObserver, in boolean aOnCurrentThread)
void disableMessageObserver (in nsIDRef aTarget)
void enableMessageObserver (in nsIDRef aTarget)
void removeClientObserver (in ipcIClientObserver aObserver)
void removeName (in string aName)
unsigned long resolveClientName (in string aName)
void sendMessage (in unsigned long aReceiverID, in nsIDRef aTarget,[array, const, size_is(aDataLen)] in octet aData, in unsigned long aDataLen)
void waitMessage (in unsigned long aSenderID, in nsIDRef aTarget, in ipcIMessageObserver aObserver, in unsigned long aTimeout)
Methods
 NS_IMETHOD_ (nsrefcnt) Release(void)=0
 NS_IMETHOD_ (nsrefcnt) AddRef(void)=0
NS_IMETHOD QueryInterface (REFNSIID aIID, void **aInstancePtr)=0

Public Attributes

readonly attribute unsigned long ID

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

Generated by  Doxygen 1.6.0   Back to index