ipcdriver.h

Go to the documentation of this file.
00001 
00002 /*  $Id: ipcdriver.h 355 2005-01-11 22:48:55Z andreradke $    */
00003 
00004 /******************************************************************************
00005 
00006     UserLand Frontier(tm) -- High performance Web content management,
00007     object database, system-level and Internet scripting environment,
00008     including source code editing and debugging.
00009 
00010     Copyright (C) 1992-2004 UserLand Software, Inc.
00011 
00012     This program is free software; you can redistribute it and/or modify
00013     it under the terms of the GNU General Public License as published by
00014     the Free Software Foundation; either version 2 of the License, or
00015     (at your option) any later version.
00016 
00017     This program is distributed in the hope that it will be useful,
00018     but WITHOUT ANY WARRANTY; without even the implied warranty of
00019     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00020     GNU General Public License for more details.
00021 
00022     You should have received a copy of the GNU General Public License
00023     along with this program; if not, write to the Free Software
00024     Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
00025 
00026 ******************************************************************************/
00027 
00028 /* file:    IPCDriver.h
00029 -- desc:    Public header file for IPCDriver
00030 -- version: V1.0
00031 -- by:      Don Park
00032 -- when:    November 1988
00033 -- hist:    30Nov88 V1.0 DDP    New.
00034 */
00035 
00036 #ifdef GLOBALSOK
00037 #define _IPCDrvrName        "\p.IPC Manager  1988 UserLand"
00038 #define _IPCFileName        "\pIPC Manager"
00039 #endif
00040 
00041 /* Control selector codes understood by IPC driver */
00042 enum {
00043     csOpnIPCPrc = 256,  /* register a named Process */
00044     csClsIPCPrc,        /* unregister a Process */
00045     csFndIPCPrc,        /* find a named Process */
00046     csWhoIPCPrc,        /* return name of a Process */
00047     csSndIPCMsg,        /* send a Message from a Process to another Process */
00048     csRcvIPCMsg,        /* receive a Message from any Process to a Process */
00049     csClrIPCMsg         /* flush all Messages sent to a Process */
00050 };
00051 
00052 /* Structure passed through csParam field of CntrlParam block when
00053 -- a Control code is sent.
00054 */
00055 typedef struct  {       /* Process Parameter Block */
00056     PIN*    pin;        /* Process Name */
00057     PID     pid;        /* Process ID */
00058     PID     sender;     /* Sender Process ID */
00059     PID     receiver;   /* Receiver Process ID */
00060     Handle  message;    /* Message handle */
00061 } _IPCParam;
00062 

Generated on Wed May 31 18:19:50 2006 for frontierkernel 10.1.10a by  doxygen 1.4.6