From 8df9466ada46e4b07990b9cb7e8b1cd61b96844a Mon Sep 17 00:00:00 2001 From: me_desk Date: Sun, 17 Jun 2012 21:15:12 +0000 Subject: todo list update git-svn-id: svn://localhost/project_picapica/trunk@128 fb96df88-216d-11de-830c-f3023f12d8ac --- PICA_msgproc.h | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100755 PICA_msgproc.h (limited to 'PICA_msgproc.h') diff --git a/PICA_msgproc.h b/PICA_msgproc.h new file mode 100755 index 0000000..5bcab20 --- /dev/null +++ b/PICA_msgproc.h @@ -0,0 +1,24 @@ +// структуры и функции для обработки сообщений протокола +// +#ifndef PICA_MSGPROC_H +#define PICA_MSGPROC_H + +#define PICA_MSG_FIXED_SIZE 0 +#define PICA_MSG_VAR_SIZE 1 +#define PICA_MSG_VARSIZE_INT8 1 +#define PICA_MSG_VARSIZE_INT16 2 + +struct PICA_msginfo +{ +unsigned int msgid; +unsigned int fixedsz;//фиксированный или переменный размер +unsigned int sz;//фиксированный размер всего пакета либо кол-во байт, определяющих размер хвостовой части пакета +unsigned int (*msgprocfn)(unsigned char*,unsigned int,void*);//функция-обработчик данного типа сообщений +}; + +unsigned int PICA_msggetsize(unsigned char *buf,unsigned int nb,struct PICA_msginfo *msgs,unsigned int nmsg); + +unsigned int PICA_processmsg(unsigned char *buf,unsigned int size,void* arg,struct PICA_msginfo *msgs,unsigned int nmsg); + +unsigned int PICA_processdatastream(unsigned char *buf,unsigned int *read_pos,void* arg,struct PICA_msginfo *msgs,unsigned int nmsg); +#endif -- cgit v1.2.1