Set release file for RMR core package
[ric-plt/lib/rmr.git] / src / rmr / common / include / rmr.h
index 88689d5..4a8968e 100644 (file)
@@ -72,6 +72,11 @@ extern "C" {
 #define RMR_ERR_INITFAILED     15              // initialisation of something (probably message) failed
 #define RMR_ERR_NOTSUPP                16              // the request is not supported, or RMr was not initialised for the request
 
+#define RMR_NO_CLONE           0               // parm constants for better readability
+#define RMR_CLONE                      1
+#define RMR_NO_COPY                    0
+#define RMR_COPY                       1
+
 #define RMR_WH_CONNECTED(a) (a>=0)     // for now whid is integer; it could be pointer at some future date
 
 /*
@@ -106,6 +111,8 @@ typedef struct {
 
        void*   ring;                           // ring this buffer should be queued back to
        int             rts_fd;                         // SI fd for return to sender
+
+       int             cookie;                         // cookie to detect user misuse of free'd msg
 } rmr_mbuf_t;
 
 
@@ -133,7 +140,9 @@ extern void rmr_set_low_latency( void* vctx );
 extern rmr_mbuf_t* rmr_torcv_msg( void* vctx, rmr_mbuf_t* old_msg, int ms_to );
 extern rmr_mbuf_t*  rmr_tralloc_msg( void* context, int msize, int trsize, unsigned const char* data );
 extern rmr_whid_t rmr_wh_open( void* vctx, char const* target );
+extern rmr_mbuf_t* rmr_wh_call( void* vctx, rmr_whid_t whid, rmr_mbuf_t* msg, int call_id, int max_wait );
 extern rmr_mbuf_t* rmr_wh_send_msg( void* vctx, rmr_whid_t whid, rmr_mbuf_t* msg );
+extern int rmr_wh_state( void* vctx, rmr_whid_t whid );
 extern void rmr_wh_close( void* vctx, int whid );
 
 // ----- mt call support --------------------------------------------------------------------------------