Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

ipcservicelayer.h

Go to the documentation of this file.
00001 /*************************************************************************** 00002 $RCSfile: ipcservicelayer.h,v $ 00003 ------------------- 00004 cvs : $Id: ipcservicelayer.h,v 1.3 2003/05/08 12:26:38 aquamaniac Exp $ 00005 begin : Fri Nov 08 2002 00006 copyright : (C) 2002 by Martin Preuss 00007 email : martin@libchipcard.de 00008 00009 *************************************************************************** 00010 * * 00011 * This library is free software; you can redistribute it and/or * 00012 * modify it under the terms of the GNU Lesser General Public * 00013 * License as published by the Free Software Foundation; either * 00014 * version 2.1 of the License, or (at your option) any later version. * 00015 * * 00016 * This library is distributed in the hope that it will be useful, * 00017 * but WITHOUT ANY WARRANTY; without even the implied warranty of * 00018 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * 00019 * Lesser General Public License for more details. * 00020 * * 00021 * You should have received a copy of the GNU Lesser General Public * 00022 * License along with this library; if not, write to the Free Software * 00023 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, * 00024 * MA 02111-1307 USA * 00025 * * 00026 ***************************************************************************/ 00027 00028 00029 #ifndef CHAMELEON_IPCSERVICELAYER_H 00030 #define CHAMELEON_IPCSERVICELAYER_H "$Id: ipcservicelayer.h,v 1.3 2003/05/08 12:26:38 aquamaniac Exp $" 00031 00032 #include <chameleon/ipcmessagelayer.h> 00033 #include <chameleon/ipcmessage.h> 00034 #include <chameleon/error.h> 00035 00036 #ifdef __cplusplus 00037 extern "C" { 00038 #endif 00039 00040 CHIPCARD_API typedef struct IPCSERVICELAYERSTRUCT IPCSERVICELAYER; 00041 00042 00043 CHIPCARD_API struct IPCSERVICELAYERSTRUCT { 00044 int refCount; 00045 IPCMESSAGELAYER *messageLayers; 00046 IPCMESSAGELAYER *nextMessageLayer; 00047 }; 00048 00049 00050 00051 00055 CHIPCARD_API IPCSERVICELAYER *IPCServiceLayer_new(); 00056 00064 CHIPCARD_API void IPCServiceLayer_share(IPCSERVICELAYER *sl); 00065 00069 CHIPCARD_API void IPCServiceLayer_free(IPCSERVICELAYER *sl); 00070 00071 00072 CHIPCARD_API ERRORCODE IPCServiceLayer_SendMessage(IPCSERVICELAYER *sl, 00073 IPCMESSAGELAYER *ml, 00074 IPCMESSAGE *msg); 00075 00081 CHIPCARD_API ERRORCODE IPCServiceLayer_NextMessage(IPCSERVICELAYER *sl, 00082 IPCMESSAGELAYER **ml, 00083 IPCMESSAGE **msg, 00084 int mark); 00085 00086 CHIPCARD_API void IPCServiceLayer_AddMessageLayer(IPCSERVICELAYER *sl, 00087 IPCMESSAGELAYER *ml); 00088 00089 CHIPCARD_API void IPCServiceLayer_UnlinkMessageLayer(IPCSERVICELAYER *sl, 00090 IPCMESSAGELAYER *ml); 00091 00092 CHIPCARD_API ERRORCODE IPCServiceLayer_Work(IPCSERVICELAYER *sl, int timeout); 00093 00094 CHIPCARD_API void IPCServiceLayer_RemoveDisconnected(IPCSERVICELAYER *sl); 00095 00096 00097 CHIPCARD_API void IPCServiceLayer_ShutDown(IPCSERVICELAYER *sl); 00098 00099 00100 CHIPCARD_API IPCMESSAGELAYER *IPCServiceLayer_FindMessageLayer(IPCSERVICELAYER *sl, 00101 int id); 00102 00103 00104 #ifdef __cplusplus 00105 } 00106 #endif 00107 00108 #endif 00109 00110 00111

Generated on Wed Jul 28 14:56:49 2004 for libchipcard by doxygen 1.3.7