summaryrefslogtreecommitdiff
path: root/gruel
diff options
context:
space:
mode:
authorJohnathan Corgan2012-04-16 16:29:36 -0700
committerJohnathan Corgan2012-04-16 16:29:36 -0700
commitca7903db3bae8c0b167c39e0e78021724b7be4b3 (patch)
tree0fd3e83118fb583ddffdc257acda5b7fb0c73924 /gruel
parent85bc95b0f6d95ab78db229df1d3c2b74c632aff4 (diff)
parent54f27eed4991daa41ccba37789a250abdab020a9 (diff)
downloadgnuradio-ca7903db3bae8c0b167c39e0e78021724b7be4b3.tar.gz
gnuradio-ca7903db3bae8c0b167c39e0e78021724b7be4b3.tar.bz2
gnuradio-ca7903db3bae8c0b167c39e0e78021724b7be4b3.zip
Merge branch 'maint'
Diffstat (limited to 'gruel')
-rw-r--r--gruel/src/include/gruel/pmt.h19
-rw-r--r--gruel/src/lib/pmt/pmt.cc20
-rw-r--r--gruel/src/lib/pmt/pmt_int.h9
3 files changed, 2 insertions, 46 deletions
diff --git a/gruel/src/include/gruel/pmt.h b/gruel/src/include/gruel/pmt.h
index 92af1eba6..1e8b38627 100644
--- a/gruel/src/include/gruel/pmt.h
+++ b/gruel/src/include/gruel/pmt.h
@@ -32,7 +32,6 @@
#include <stdint.h>
#include <iosfwd>
#include <stdexcept>
-#include <boost/function.hpp>
namespace gruel {
class msg_accepter;
@@ -806,24 +805,6 @@ GRUEL_API std::string pmt_serialize_str(pmt_t obj);
*/
GRUEL_API pmt_t pmt_deserialize_str(std::string str);
-/*
- * ------------------------------------------------------------------------
- * advanced
- * ------------------------------------------------------------------------
- */
-
-#define GRUEL_PMT_HAVE_PMT_SET_DELETER
-
-/*!
- * Set a deleter function to be called when the PMT dereferences.
- * User beware! This function is for extremely advanced use.
- * Use boost bind to bind extra parameters into the deleter function.
- * Set an empty function type to reset the PMT to the default deleter.
- * \param obj the pmt object in which to set the deleter function
- * \param deleter a function that gets an opaque PMT pointer type
- */
-GRUEL_API void pmt_set_deleter(pmt_t obj, boost::function<void(pmt_base *)> &deleter);
-
} /* namespace pmt */
#include <gruel/pmt_sugar.h>
diff --git a/gruel/src/lib/pmt/pmt.cc b/gruel/src/lib/pmt/pmt.cc
index 9b1e14e75..1d9125d4e 100644
--- a/gruel/src/lib/pmt/pmt.cc
+++ b/gruel/src/lib/pmt/pmt.cc
@@ -58,13 +58,7 @@ pmt_base::operator delete(void *p, size_t size)
#endif
void intrusive_ptr_add_ref(pmt_base* p) { ++(p->count_); }
-void intrusive_ptr_release(pmt_base* p) {
- if (--(p->count_) == 0 ){
- //make a copy of deleter before we delete its container, p
- boost::function<void(pmt_base *)> deleter = p->deleter_;
- deleter(p);
- }
-}
+void intrusive_ptr_release(pmt_base* p) { if (--(p->count_) == 0 ) delete p; }
pmt_base::~pmt_base()
{
@@ -1389,16 +1383,4 @@ pmt_dump_sizeof()
printf("sizeof(pmt_uniform_vector) = %3zd\n", sizeof(pmt_uniform_vector));
}
-/*
- * ------------------------------------------------------------------------
- * advanced
- * ------------------------------------------------------------------------
- */
-
-void
-pmt_set_deleter(pmt_t obj, boost::function<void(pmt_base *)> &deleter)
-{
- obj->deleter_ = (deleter)? deleter : &pmt_base::default_deleter;
-}
-
} /* namespace pmt */
diff --git a/gruel/src/lib/pmt/pmt_int.h b/gruel/src/lib/pmt/pmt_int.h
index bd2b5fe5a..d669e1049 100644
--- a/gruel/src/lib/pmt/pmt_int.h
+++ b/gruel/src/lib/pmt/pmt_int.h
@@ -38,15 +38,8 @@ namespace pmt {
class GRUEL_API pmt_base : boost::noncopyable {
mutable boost::detail::atomic_count count_;
-public:
- static void default_deleter(pmt_base *p){
- delete p;
- }
-
- boost::function<void(pmt_base *)> deleter_;
-
protected:
- pmt_base() : count_(0), deleter_(&pmt::pmt_base::default_deleter) {};
+ pmt_base() : count_(0) {};
virtual ~pmt_base();
public: