io_codec_be.h

Go to the documentation of this file.
00001 /***************************************************************************
00002     copyright   : (C) 2007 by Martin Preuss
00003     email       : martin@libchipcard.de
00004 
00005  ***************************************************************************
00006  *          Please see toplevel file COPYING for license details           *
00007  ***************************************************************************/
00008 
00009 
00010 #ifndef GWEN_IOLAYER_CODEC_BE_H
00011 #define GWEN_IOLAYER_CODEC_BE_H
00012 
00013 #include <gwenhywfar/iolayer.h>
00014 #include <gwenhywfar/ringbuffer.h>
00015 
00016 
00017 typedef int (*GWEN_IO_LAYER_CODE_ENCODE_FN)(GWEN_IO_LAYER *io,
00018                                             const uint8_t *pBuffer,
00019                                             uint32_t lBuffer);
00020 
00021 typedef int (*GWEN_IO_LAYER_CODE_DECODE_FN)(GWEN_IO_LAYER *io,
00022                                             uint8_t *pBuffer,
00023                                             uint32_t lBuffer);
00024 
00025 
00026 GWENHYWFAR_API GWEN_IO_LAYER *GWEN_Io_LayerCodec_new(const char *typeName, GWEN_IO_LAYER *baseLayer);
00027 
00028 GWENHYWFAR_API int GWEN_Io_LayerCodec_CheckWriteOut(const GWEN_IO_LAYER *io);
00029 
00030 GWENHYWFAR_API GWEN_RINGBUFFER *GWEN_Io_LayerCodec_GetReadBuffer(const GWEN_IO_LAYER *io);
00031 GWENHYWFAR_API GWEN_RINGBUFFER *GWEN_Io_LayerCodec_GetWriteBuffer(const GWEN_IO_LAYER *io);
00032 
00033 GWENHYWFAR_API int GWEN_Io_LayerCodec_EnsureReadOk(GWEN_IO_LAYER *io);
00034 
00035 
00036 GWENHYWFAR_API GWEN_IO_LAYER_CODE_ENCODE_FN GWEN_Io_LayerCodec_SetEncodeFn(GWEN_IO_LAYER *io,
00037                                                                            GWEN_IO_LAYER_CODE_ENCODE_FN f);
00038 
00039 GWENHYWFAR_API GWEN_IO_LAYER_CODE_DECODE_FN GWEN_Io_LayerCodec_SetDecodeFn(GWEN_IO_LAYER *io,
00040                                                                            GWEN_IO_LAYER_CODE_DECODE_FN f);
00041 
00042 
00043 GWENHYWFAR_API void GWEN_Io_LayerCodec_AbortRequests(GWEN_IO_LAYER *io, int errorCode);
00044 GWENHYWFAR_API void GWEN_Io_LayerCodec_Reset(GWEN_IO_LAYER *io);
00045 
00046 GWENHYWFAR_API uint32_t GWEN_Io_LayerCodec_GetCurrentGuiId(const GWEN_IO_LAYER *io);
00047 GWENHYWFAR_API void GWEN_Io_LayerCodec_SetCurrentGuiId(GWEN_IO_LAYER *io, uint32_t guiid);
00048 
00049 #endif
00050 
00051 
00052 
00053 

Generated by  doxygen 1.6.2