diff options
| author | me_desk <me_desk@fb96df88-216d-11de-830c-f3023f12d8ac> | 2012-06-17 21:15:12 +0000 |
|---|---|---|
| committer | me_desk <me_desk@fb96df88-216d-11de-830c-f3023f12d8ac> | 2012-06-17 21:15:12 +0000 |
| commit | 8df9466ada46e4b07990b9cb7e8b1cd61b96844a (patch) | |
| tree | 2cb652e5839bed672133ffa90e7ad477f55cfb6b /PICA_msgproc.h | |
| download | pica-pica-8df9466ada46e4b07990b9cb7e8b1cd61b96844a.tar.gz pica-pica-8df9466ada46e4b07990b9cb7e8b1cd61b96844a.zip | |
todo list update
git-svn-id: svn://localhost/project_picapica/trunk@128 fb96df88-216d-11de-830c-f3023f12d8ac
Diffstat (limited to 'PICA_msgproc.h')
| -rwxr-xr-x | PICA_msgproc.h | 24 |
1 files changed, 24 insertions, 0 deletions
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 |
