00001
00002 #ifndef DDF_MBX_HPP
00003 #define DDF_MBX_HPP
00004
00005 extern "C"
00006 {
00007 #include <sys/types.h>
00008 #include <sys/ipc.h>
00009 #include <sys/msg.h>
00010 }
00011
00012 #define PERM 0666
00013
00014 namespace jafar
00015 {
00016 namespace ddf
00017 {
00018
00019 typedef enum {MSG_OK, MSG_REC, MSG_NOT_REC} MSGQ_RET;
00020
00024 int mbx_create(key_t key);
00025 void mbx_destroy(int msqid);
00026 int mbx_getq(key_t key);
00027 void mbx_send(int msqid, struct msgbuf *msgp, size_t msgsz);
00028 MSGQ_RET mbx_rec(int msqid, struct msgbuf *msgp, size_t msgsz, long msgtyp);
00029 void mbx_blksend(int msqid, struct msgbuf *msgp, size_t msgsz);
00030 MSGQ_RET mbx_blkrec(int msqid, struct msgbuf *msgp, size_t msgsz, long msgtyp);
00031
00032
00033
00034 }
00035 }
00036 #endif