summaryrefslogtreecommitdiff
path: root/bindings
diff options
context:
space:
mode:
Diffstat (limited to 'bindings')
-rw-r--r--bindings/c/zmq.h4
-rw-r--r--bindings/cpp/zmq.hpp10
2 files changed, 8 insertions, 6 deletions
diff --git a/bindings/c/zmq.h b/bindings/c/zmq.h
index 37bad52..bda6c01 100644
--- a/bindings/c/zmq.h
+++ b/bindings/c/zmq.h
@@ -106,12 +106,12 @@ typedef struct
unsigned char vsm_data [ZMQ_MAX_VSM_SIZE];
} zmq_msg_t;
-typedef void (zmq_free_fn) (void *data);
+typedef void (zmq_free_fn) (void *data, void *hint);
ZMQ_EXPORT int zmq_msg_init (zmq_msg_t *msg);
ZMQ_EXPORT int zmq_msg_init_size (zmq_msg_t *msg, size_t size);
ZMQ_EXPORT int zmq_msg_init_data (zmq_msg_t *msg, void *data,
- size_t size, zmq_free_fn *ffn);
+ size_t size, zmq_free_fn *ffn, void *hint);
ZMQ_EXPORT int zmq_msg_close (zmq_msg_t *msg);
ZMQ_EXPORT int zmq_msg_move (zmq_msg_t *dest, zmq_msg_t *src);
ZMQ_EXPORT int zmq_msg_copy (zmq_msg_t *dest, zmq_msg_t *src);
diff --git a/bindings/cpp/zmq.hpp b/bindings/cpp/zmq.hpp
index 1867270..4349f0b 100644
--- a/bindings/cpp/zmq.hpp
+++ b/bindings/cpp/zmq.hpp
@@ -74,9 +74,10 @@ namespace zmq
throw error_t ();
}
- inline message_t (void *data_, size_t size_, free_fn *ffn_)
+ inline message_t (void *data_, size_t size_, free_fn *ffn_,
+ void *hint_ = NULL)
{
- int rc = zmq_msg_init_data (this, data_, size_, ffn_);
+ int rc = zmq_msg_init_data (this, data_, size_, ffn_, hint_);
if (rc != 0)
throw error_t ();
}
@@ -108,12 +109,13 @@ namespace zmq
throw error_t ();
}
- inline void rebuild (void *data_, size_t size_, free_fn *ffn_)
+ inline void rebuild (void *data_, size_t size_, free_fn *ffn_,
+ void *hint_ = NULL)
{
int rc = zmq_msg_close (this);
if (rc != 0)
throw error_t ();
- rc = zmq_msg_init_data (this, data_, size_, ffn_);
+ rc = zmq_msg_init_data (this, data_, size_, ffn_, hint_);
if (rc != 0)
throw error_t ();
}