diff options
Diffstat (limited to 'mblock/src/lib')
46 files changed, 122 insertions, 1174 deletions
diff --git a/mblock/src/lib/Makefile.am b/mblock/src/lib/Makefile.am index e8e5f59af..269c8ae22 100644 --- a/mblock/src/lib/Makefile.am +++ b/mblock/src/lib/Makefile.am @@ -22,7 +22,8 @@ include $(top_srcdir)/Makefile.common AM_CPPFLAGS = $(DEFINES) $(OMNITHREAD_INCLUDES) $(PMT_INCLUDES) \ - $(BOOST_CPPFLAGS) $(CPPUNIT_INCLUDES) $(WITH_INCLUDES) + $(BOOST_CPPFLAGS) $(CPPUNIT_INCLUDES) $(WITH_INCLUDES) \ + $(MBLOCK_INCLUDES) # disable test until we fix ticket:180 # TESTS = test_mblock @@ -75,25 +76,11 @@ libmblock_la_LIBADD = \ $(PMT_LA) \ -lstdc++ -include_HEADERS = \ - mb_class_registry.h \ - mb_common.h \ - mb_exception.h \ +noinst_HEADERS = \ mb_gettid.h \ - mb_mblock.h \ - mb_message.h \ - mb_msg_accepter.h \ mb_msg_accepter_msgq.h \ - mb_msg_queue.h \ - mb_port.h \ mb_port_simple.h \ - mb_protocol_class.h \ - mb_runtime.h \ - mb_time.h \ - mb_util.h - - -noinst_HEADERS = \ + mb_util.h \ mb_connection.h \ mb_endpoint.h \ mb_mblock_impl.h \ diff --git a/mblock/src/lib/benchmark_send.cc b/mblock/src/lib/benchmark_send.cc index 7b8f7cb76..fe873a69a 100644 --- a/mblock/src/lib/benchmark_send.cc +++ b/mblock/src/lib/benchmark_send.cc @@ -1,6 +1,6 @@ /* -*- c++ -*- */ /* - * Copyright 2007 Free Software Foundation, Inc. + * Copyright 2007,2008 Free Software Foundation, Inc. * * This file is part of GNU Radio * @@ -19,7 +19,7 @@ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. */ -#include <mb_runtime.h> +#include <mblock/runtime.h> #include <iostream> int diff --git a/mblock/src/lib/mb_class_registry.cc b/mblock/src/lib/mb_class_registry.cc index 77cec8de6..7ccee2969 100644 --- a/mblock/src/lib/mb_class_registry.cc +++ b/mblock/src/lib/mb_class_registry.cc @@ -1,6 +1,6 @@ /* -*- c++ -*- */ /* - * Copyright 2007 Free Software Foundation, Inc. + * Copyright 2007,2008 Free Software Foundation, Inc. * * This file is part of GNU Radio * @@ -22,7 +22,7 @@ #ifdef HAVE_CONFIG_H #include <config.h> #endif -#include <mb_class_registry.h> +#include <mblock/class_registry.h> #include <map> static std::map<std::string, mb_mblock_maker_t> s_registry; diff --git a/mblock/src/lib/mb_class_registry.h b/mblock/src/lib/mb_class_registry.h deleted file mode 100644 index 713cc1e26..000000000 --- a/mblock/src/lib/mb_class_registry.h +++ /dev/null @@ -1,51 +0,0 @@ -/* -*- c++ -*- */ -/* - * Copyright 2007 Free Software Foundation, Inc. - * - * This file is part of GNU Radio - * - * GNU Radio is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 3, or (at your option) - * any later version. - * - * GNU Radio is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - */ -#ifndef INCLUDED_MB_CLASS_REGISTRY_H -#define INCLUDED_MB_CLASS_REGISTRY_H - -#include <mb_common.h> - -//! conceptually, pointer to constructor -typedef mb_mblock_sptr (*mb_mblock_maker_t)(mb_runtime *runtime, - const std::string &instance_name, - pmt_t user_arg); - -/* - * \brief Maintain mapping between mblock class_name and factory (maker) - */ -class mb_class_registry : public boost::noncopyable { -public: - static bool register_maker(const std::string &name, mb_mblock_maker_t maker); - static bool lookup_maker(const std::string &name, mb_mblock_maker_t *maker); -}; - -template<class mblock> -mb_mblock_sptr mb_mblock_maker(mb_runtime *runtime, - const std::string &instance_name, - pmt_t user_arg) -{ - return mb_mblock_sptr(new mblock(runtime, instance_name, user_arg)); -} - -#define REGISTER_MBLOCK_CLASS(name) \ - bool __RBC__ ## name = mb_class_registry::register_maker(#name, &mb_mblock_maker<name>) - -#endif /* INCLUDED_MB_CLASS_REGISTRY_H */ diff --git a/mblock/src/lib/mb_common.h b/mblock/src/lib/mb_common.h deleted file mode 100644 index 1f78d5a40..000000000 --- a/mblock/src/lib/mb_common.h +++ /dev/null @@ -1,94 +0,0 @@ -/* -*- c++ -*- */ -/* - * Copyright 2006,2007 Free Software Foundation, Inc. - * - * This file is part of GNU Radio - * - * GNU Radio is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 3, or (at your option) - * any later version. - * - * GNU Radio is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - */ -#ifndef INCLUDED_MB_COMMON_H -#define INCLUDED_MB_COMMON_H - -#include <pmt.h> -#include <vector> -#include <stdexcept> -#include <boost/utility.hpp> -#include <boost/enable_shared_from_this.hpp> -#include <boost/weak_ptr.hpp> - -/* - * The priority type and valid range - */ -typedef unsigned int mb_pri_t; -static const mb_pri_t MB_PRI_BEST = 0; -static const mb_pri_t MB_PRI_DEFAULT = 4; -static const mb_pri_t MB_PRI_WORST = 7; -static const mb_pri_t MB_NPRI = MB_PRI_WORST + 1; // number of valid priorities - -/*! - * \brief return true iff priority a is better than priority b - */ -inline static bool -mb_pri_better(mb_pri_t a, mb_pri_t b) -{ - return a < b; -} - -/*! - * \brief return true iff priority a is worse than priority b - */ -inline static bool -mb_pri_worse(mb_pri_t a, mb_pri_t b) -{ - return a > b; -} - -/*! - * \brief ensure that pri is valid - */ -inline static mb_pri_t -mb_pri_clamp(mb_pri_t p) -{ - return p < MB_NPRI ? p : MB_NPRI - 1; -} - -class mb_runtime; -typedef boost::shared_ptr<mb_runtime> mb_runtime_sptr; - -//class mb_runtime_impl; -//typedef boost::shared_ptr<mb_runtime_impl> mb_runtime_impl_sptr; - -class mb_mblock; -typedef boost::shared_ptr<mb_mblock> mb_mblock_sptr; - -class mb_mblock_impl; -typedef boost::shared_ptr<mb_mblock_impl> mb_mblock_impl_sptr; - -class mb_port; -typedef boost::shared_ptr<mb_port> mb_port_sptr; - -//class mb_port_detail; -//typedef boost::shared_ptr<mb_port_detail> mb_port_detail_sptr; - -class mb_msg_accepter; -typedef boost::shared_ptr<mb_msg_accepter> mb_msg_accepter_sptr; - -class mb_message; -typedef boost::shared_ptr<mb_message> mb_message_sptr; - -class mb_msg_queue; -typedef boost::shared_ptr<mb_msg_queue> mb_msg_queue_sptr; - -#endif /* INCLUDED_MB_COMMON_H */ diff --git a/mblock/src/lib/mb_endpoint.h b/mblock/src/lib/mb_endpoint.h index db55b3f44..aae376a5d 100644 --- a/mblock/src/lib/mb_endpoint.h +++ b/mblock/src/lib/mb_endpoint.h @@ -1,6 +1,6 @@ /* -*- c++ -*- */ /* - * Copyright 2006 Free Software Foundation, Inc. + * Copyright 2006,2008 Free Software Foundation, Inc. * * This file is part of GNU Radio * @@ -23,7 +23,7 @@ #define INCLUDED_MB_ENDPOINT_H #include <string> -#include <mb_port.h> +#include <mblock/port.h> /*! * \brief Endpoint specification for connection diff --git a/mblock/src/lib/mb_exception.cc b/mblock/src/lib/mb_exception.cc index 3c08a01d0..810131840 100644 --- a/mblock/src/lib/mb_exception.cc +++ b/mblock/src/lib/mb_exception.cc @@ -1,6 +1,6 @@ /* -*- c++ -*- */ /* - * Copyright 2006 Free Software Foundation, Inc. + * Copyright 2006,2008 Free Software Foundation, Inc. * * This file is part of GNU Radio * @@ -23,8 +23,8 @@ #include <config.h> #endif -#include <mb_exception.h> -#include <mb_mblock.h> +#include <mblock/exception.h> +#include <mblock/mblock.h> #include <mb_util.h> diff --git a/mblock/src/lib/mb_exception.h b/mblock/src/lib/mb_exception.h deleted file mode 100644 index 837e49f42..000000000 --- a/mblock/src/lib/mb_exception.h +++ /dev/null @@ -1,118 +0,0 @@ -/* -*- c++ -*- */ -/* - * Copyright 2006 Free Software Foundation, Inc. - * - * This file is part of GNU Radio - * - * GNU Radio is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 3, or (at your option) - * any later version. - * - * GNU Radio is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - */ -#ifndef INCLUDED_MB_EXCEPTION_H -#define INCLUDED_MB_EXCEPTION_H - -#include <stdexcept> - -class mb_mblock; - - -class mbe_base : public std::logic_error -{ -public: - mbe_base(mb_mblock *mb, const std::string &msg); -}; - -class mbe_not_implemented : public mbe_base -{ -public: - mbe_not_implemented(mb_mblock *mb, const std::string &msg); -}; - -class mbe_no_such_class : public mbe_base -{ -public: - mbe_no_such_class(mb_mblock *, const std::string &class_name); -}; - -class mbe_no_such_component : public mbe_base -{ -public: - mbe_no_such_component(mb_mblock *, const std::string &component_name); -}; - -class mbe_duplicate_component : public mbe_base -{ -public: - mbe_duplicate_component(mb_mblock *, const std::string &component_name); -}; - -class mbe_no_such_port : public mbe_base -{ -public: - mbe_no_such_port(mb_mblock *, const std::string &port_name); -}; - - -class mbe_duplicate_port : public mbe_base -{ -public: - mbe_duplicate_port(mb_mblock *, const std::string &port_name); -}; - -class mbe_already_connected : public mbe_base -{ -public: - mbe_already_connected(mb_mblock *, const std::string &comp_name, - const std::string &port_name); -}; - -class mbe_incompatible_ports : public mbe_base -{ -public: - mbe_incompatible_ports(mb_mblock *, - const std::string &comp1_name, - const std::string &port1_name, - const std::string &comp2_name, - const std::string &port2_name); -}; - -class mbe_invalid_port_type : public mbe_base -{ -public: - mbe_invalid_port_type(mb_mblock *, const std::string &comp_name, - const std::string &port_name); -}; - -class mbe_mblock_failed : public mbe_base -{ -public: - mbe_mblock_failed(mb_mblock *, const std::string &msg); -}; - - - -// not derived from mbe_base to simplify try/catch -class mbe_terminate -{ -public: - mbe_terminate(); -}; - -// not derived from mbe_base to simplify try/catch -class mbe_exit -{ -public: - mbe_exit(); -}; - -#endif /* INCLUDED_MB_EXCEPTION_H */ diff --git a/mblock/src/lib/mb_mblock.cc b/mblock/src/lib/mb_mblock.cc index 38d216ad4..b2f763623 100644 --- a/mblock/src/lib/mb_mblock.cc +++ b/mblock/src/lib/mb_mblock.cc @@ -1,6 +1,6 @@ /* -*- c++ -*- */ /* - * Copyright 2006 Free Software Foundation, Inc. + * Copyright 2006,2008 Free Software Foundation, Inc. * * This file is part of GNU Radio * @@ -23,10 +23,10 @@ #include <config.h> #endif -#include <mb_mblock.h> +#include <mblock/mblock.h> #include <mb_mblock_impl.h> -#include <mb_runtime.h> -#include <mb_exception.h> +#include <mblock/runtime.h> +#include <mblock/exception.h> #include <iostream> diff --git a/mblock/src/lib/mb_mblock.h b/mblock/src/lib/mb_mblock.h deleted file mode 100644 index 146e28008..000000000 --- a/mblock/src/lib/mb_mblock.h +++ /dev/null @@ -1,318 +0,0 @@ -/* -*- c++ -*- */ -/* - * Copyright 2006 Free Software Foundation, Inc. - * - * This file is part of GNU Radio - * - * GNU Radio is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 3, or (at your option) - * any later version. - * - * GNU Radio is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - */ -#ifndef INCLUDED_MB_MBLOCK_H -#define INCLUDED_MB_MBLOCK_H - -#include <mb_common.h> -#include <mb_message.h> -#include <mb_port.h> -#include <mb_time.h> - - -/*! - * Abstract class implementing visitor pattern - * \ingroup internal - */ -class mb_visitor -{ -public: - virtual ~mb_visitor(); - virtual bool operator()(mb_mblock *mblock) = 0; -}; - -// ---------------------------------------------------------------------- - -/*! - * \brief Parent class for all message passing blocks - * - * Subclass this to define your mblocks. - */ -class mb_mblock : boost::noncopyable, - public boost::enable_shared_from_this<mb_mblock> -{ -private: - mb_mblock_impl_sptr d_impl; // implementation details - - friend class mb_runtime; - friend class mb_mblock_impl; - friend class mb_worker; - -protected: - /*! - * \brief mblock constructor. - * - * Initializing all mblocks in the system is a 3 step procedure. - * - * The top level mblock's constructor is run. That constructor - * (a) registers all of its ports using define_port, (b) registers any - * subcomponents it may have via the define_component method, and - * then (c) issues connect calls to wire its subcomponents together. - * - * \param runtime the runtime associated with this mblock - * \param instance_name specify the name of this instance - * (for debugging, NUMA mapping, etc) - * \param user_arg argument passed by user to constructor - * (ignored by the mb_mblock base class) - */ - mb_mblock(mb_runtime *runtime, const std::string &instance_name, pmt_t user_arg); - -public: - /*! - * \brief Called by the runtime system to execute the initial - * transition of the finite state machine. - * - * This method is called by the runtime after all blocks are - * constructed and before the first message is delivered. Override - * this to initialize your finite state machine. - */ - virtual void initial_transition(); - -protected: - /*! - * \brief Called by the runtime system when there's a message to handle. - * - * Override this to define your behavior. - * - * Do not issue any potentially blocking calls in this method. This - * includes things such reads or writes on sockets, pipes or slow - * i/o devices. - */ - virtual void handle_message(mb_message_sptr msg); - - /*! - * \brief Define a port. - * - * EXTERNAL and RELAY ports are part of our peer interface. - * INTERNAL ports are used to talk to sub-components. - * - * \param port_name The name of the port (must be unique within this mblock). - * \param protocol_class_name The name of the protocol class associated with - * this port. It must already be defined. - * \param conjugated Are the incoming and outgoing message sets swapped? - * \param port_type INTERNAL, EXTERNAL or RELAY. - */ - mb_port_sptr - define_port(const std::string &port_name, - const std::string &protocol_class_name, - bool conjugated, - mb_port::port_type_t port_type); - - /*! - * \brief Define a subcomponent by name. - * - * Called within the constructor to tell the system the - * names and identities of our sub-component mblocks. - * - * \param component_name The name of the sub-component (must be unique with this mblock). - * \param class_name The class of the instance that is to be created. - * \param user_arg The argument to pass to the constructor of the component. - */ - void - define_component(const std::string &component_name, - const std::string &class_name, - pmt_t user_arg = PMT_NIL); - - /*! - * \brief connect endpoint_1 to endpoint_2 - * - * \param comp_name1 component on one end of the connection - * \param port_name1 the name of the port on comp1 - * \param comp_name2 component on the other end of the connection - * \param port_name2 the name of the port on comp2 - * - * An endpoint is specified by the component's local name (given as - * component_name in the call to register_component) and the name of - * the port on that component. - * - * To connect an internal or relay port, use "self" as the component name. - */ - void - connect(const std::string &comp_name1, const std::string &port_name1, - const std::string &comp_name2, const std::string &port_name2); - - /*! - * \brief disconnect endpoint_1 from endpoint_2 - * - * \param comp_name1 component on one end of the connection - * \param port_name1 the name of the port on comp1 - * \param comp_name2 component on the other end of the connection - * \param port_name2 the name of the port on comp2 - * - * An endpoint is specified by the component's local name (given as - * component_name in the call to register_component) and the name of - * the port on that component. - * - * To disconnect an internal or relay port, use "self" as the component name. - */ - void - disconnect(const std::string &comp_name1, const std::string &port_name1, - const std::string &comp_name2, const std::string &port_name2); - - /*! - * \brief disconnect all connections to specified component - * \param component_name component to disconnect - */ - void - disconnect_component(const std::string &component_name); - - /*! - * \brief disconnect all connections to all components - */ - void - disconnect_all(); - - /*! - * \brief Return number of connections (QA mostly) - */ - int - nconnections() const; - - //! Set the class name - void set_class_name(const std::string &name); - - /*! - * \brief Tell runtime that we are done. - * - * This method does not return. - */ - void exit(); - - /*! - * \brief Ask runtime to execute the shutdown procedure for all blocks. - * - * \param result sets value of \p result output argument of runtime->run(...) - * - * The runtime first sends a maximum priority %shutdown message to - * all blocks. All blocks should handle the %shutdown message, - * perform whatever clean up is required, and call this->exit(); - * - * After a period of time (~100ms), any blocks which haven't yet - * called this->exit() are sent a maximum priority %halt message. - * %halt is detected in main_loop, and this->exit() is called. - * - * After an additional period of time (~100ms), any blocks which - * still haven't yet called this->exit() are sent a SIG<FOO> (TBD) - * signal, which will blow them out of any blocking system calls and - * raise an mbe_terminate exception. The default top-level - * runtime-provided exception handler will call this->exit() to - * finish the process. - * - * runtime->run(...) returns when all blocks have called exit. - */ - void shutdown_all(pmt_t result); - - /*! - * \brief main event dispatching loop - * - * Although it is possible to override this, the default implementation - * should work for virtually all cases. - */ - virtual void main_loop(); - -public: - virtual ~mb_mblock(); - - //! Return instance name of this block - std::string instance_name() const; - - //! Return the class name of this block - std::string class_name() const; - - //! Set the instance name of this block. - void set_instance_name(const std::string &name); - - //! Return the parent of this mblock, or 0 if we're the top-level block. - mb_mblock *parent() const; - - /*! - * \brief Schedule a "one shot" timeout. - * - * \param abs_time the absolute time at which the timeout should fire - * \param user_data the data passed in the %timeout message. - * - * When the timeout fires, a message will be sent to the mblock. - * - * The message will have port_id = %sys-port, signal = %timeout, - * data = user_data, metadata = the handle returned from - * schedule_one_shot_timeout, pri = MB_PRI_BEST. - * - * \returns a handle that can be used in cancel_timeout, and is passed - * as the metadata field of the generated %timeout message. - * - * To cancel a pending timeout, call cancel_timeout. - */ - pmt_t - schedule_one_shot_timeout(const mb_time &abs_time, pmt_t user_data); - - /*! - * \brief Schedule a periodic timeout. - * - * \param first_abs_time The absolute time at which the first timeout should fire. - * \param delta_time The relative delay between the first and successive timeouts. - * \param user_data the data passed in the %timeout message. - * - * When the timeout fires, a message will be sent to the mblock, and a - * new timeout will be scheduled for previous absolute time + delta_time. - * - * The message will have port_id = %sys-port, signal = %timeout, - * data = user_data, metadata = the handle returned from - * schedule_one_shot_timeout, pri = MB_PRI_BEST. - * - * \returns a handle that can be used in cancel_timeout, and is passed - * as the metadata field of the generated %timeout message. - * - * To cancel a pending timeout, call cancel_timeout. - */ - pmt_t - schedule_periodic_timeout(const mb_time &first_abs_time, - const mb_time &delta_time, - pmt_t user_data); - - /*! - * \brief Attempt to cancel a pending timeout. - * - * Note that this only stops a future timeout from firing. It is - * possible that a timeout may have already fired and enqueued a - * %timeout message, but that that message has not yet been seen by - * handle_message. - * - * \param handle returned from schedule_one_shot_timeout or schedule_periodic_timeout. - */ - void cancel_timeout(pmt_t handle); - - /*! - * \brief Perform a pre-order depth-first traversal of the hierarchy. - * - * The traversal stops and returns false if any call to visitor returns false. - */ - bool - walk_tree(mb_visitor *visitor); - - - //! \implementation - // internal use only - mb_mblock_impl_sptr - impl() const { return d_impl; } - -}; - - -#endif /* INCLUDED_MB_MBLOCK_H */ diff --git a/mblock/src/lib/mb_mblock_impl.cc b/mblock/src/lib/mb_mblock_impl.cc index 90868cf4c..e11b00898 100644 --- a/mblock/src/lib/mb_mblock_impl.cc +++ b/mblock/src/lib/mb_mblock_impl.cc @@ -1,6 +1,6 @@ /* -*- c++ -*- */ /* - * Copyright 2006 Free Software Foundation, Inc. + * Copyright 2006,2008 Free Software Foundation, Inc. * * This file is part of GNU Radio * @@ -23,11 +23,11 @@ #include <config.h> #endif #include <mb_mblock_impl.h> -#include <mb_mblock.h> -#include <mb_protocol_class.h> -#include <mb_port.h> +#include <mblock/mblock.h> +#include <mblock/protocol_class.h> +#include <mblock/port.h> #include <mb_port_simple.h> -#include <mb_exception.h> +#include <mblock/exception.h> #include <mb_util.h> #include <mb_msg_accepter_smp.h> #include <mbi_runtime_lock.h> diff --git a/mblock/src/lib/mb_mblock_impl.h b/mblock/src/lib/mb_mblock_impl.h index 374ee8fe0..ed8059b00 100644 --- a/mblock/src/lib/mb_mblock_impl.h +++ b/mblock/src/lib/mb_mblock_impl.h @@ -1,6 +1,6 @@ /* -*- c++ -*- */ /* - * Copyright 2006,2007 Free Software Foundation, Inc. + * Copyright 2006,2007,2008 Free Software Foundation, Inc. * * This file is part of GNU Radio * @@ -21,10 +21,10 @@ #ifndef INCLUDED_MB_MBLOCK_IMPL_H #define INCLUDED_MB_MBLOCK_IMPL_H -#include <mb_mblock.h> +#include <mblock/mblock.h> #include <mb_runtime_base.h> #include <mb_connection.h> -#include <mb_msg_queue.h> +#include <mblock/msg_queue.h> #include <list> #include <map> diff --git a/mblock/src/lib/mb_message.cc b/mblock/src/lib/mb_message.cc index ce98a931e..664e369fa 100644 --- a/mblock/src/lib/mb_message.cc +++ b/mblock/src/lib/mb_message.cc @@ -1,6 +1,6 @@ /* -*- c++ -*- */ /* - * Copyright 2006 Free Software Foundation, Inc. + * Copyright 2006,2008 Free Software Foundation, Inc. * * This file is part of GNU Radio * @@ -22,7 +22,7 @@ #ifdef HAVE_CONFIG_H #include <config.h> #endif -#include <mb_message.h> +#include <mblock/message.h> #include <stdio.h> #include <pmt_pool.h> diff --git a/mblock/src/lib/mb_message.h b/mblock/src/lib/mb_message.h deleted file mode 100644 index f5e465530..000000000 --- a/mblock/src/lib/mb_message.h +++ /dev/null @@ -1,88 +0,0 @@ -/* -*- c++ -*- */ -/* - * Copyright 2006,2007 Free Software Foundation, Inc. - * - * This file is part of GNU Radio - * - * GNU Radio is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 3, or (at your option) - * any later version. - * - * GNU Radio is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - */ -#ifndef INCLUDED_MB_MESSAGE_H -#define INCLUDED_MB_MESSAGE_H - -#include <mb_common.h> -#include <iosfwd> - -#define MB_MESSAGE_LOCAL_ALLOCATOR 0 // define to 0 or 1 - -class mb_message; -typedef boost::shared_ptr<mb_message> mb_message_sptr; - -/*! - * \brief construct a message and return boost::shared_ptr - * - * \param signal identifier of the message - * \param data the data to be operated on - * \param metadata information about the data - * \param priority urgency - */ -mb_message_sptr -mb_make_message(pmt_t signal, - pmt_t data = PMT_NIL, - pmt_t metadata = PMT_NIL, - mb_pri_t priority = MB_PRI_DEFAULT); - -class mb_message { - mb_message_sptr d_next; // link field for msg queue - pmt_t d_signal; - pmt_t d_data; - pmt_t d_metadata; - mb_pri_t d_priority; - pmt_t d_port_id; // name of port msg was rcvd on (symbol) - - friend class mb_msg_queue; - - friend mb_message_sptr - mb_make_message(pmt_t signal, pmt_t data, pmt_t metadata, mb_pri_t priority); - - // private constructor - mb_message(pmt_t signal, pmt_t data, pmt_t metadata, mb_pri_t priority); - -public: - ~mb_message(); - - pmt_t signal() const { return d_signal; } - pmt_t data() const { return d_data; } - pmt_t metadata() const { return d_metadata; } - mb_pri_t priority() const { return d_priority; } - pmt_t port_id() const { return d_port_id; } - - void set_port_id(pmt_t port_id){ d_port_id = port_id; } - -#if (MB_MESSAGE_LOCAL_ALLOCATOR) - void *operator new(size_t); - void operator delete(void *, size_t); -#endif -}; - -std::ostream& operator<<(std::ostream& os, const mb_message &msg); - -inline -std::ostream& operator<<(std::ostream& os, const mb_message_sptr msg) -{ - os << *(msg.get()); - return os; -} - -#endif /* INCLUDED_MB_MESSAGE_H */ diff --git a/mblock/src/lib/mb_msg_accepter.cc b/mblock/src/lib/mb_msg_accepter.cc index 001b1f11e..88b92394c 100644 --- a/mblock/src/lib/mb_msg_accepter.cc +++ b/mblock/src/lib/mb_msg_accepter.cc @@ -23,7 +23,7 @@ #include <config.h> #endif -#include <mb_msg_accepter.h> +#include <mblock/msg_accepter.h> mb_msg_accepter::~mb_msg_accepter() { diff --git a/mblock/src/lib/mb_msg_accepter.h b/mblock/src/lib/mb_msg_accepter.h deleted file mode 100644 index 254b3b044..000000000 --- a/mblock/src/lib/mb_msg_accepter.h +++ /dev/null @@ -1,48 +0,0 @@ -/* -*- c++ -*- */ -/* - * Copyright 2007 Free Software Foundation, Inc. - * - * This file is part of GNU Radio - * - * GNU Radio is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 3, or (at your option) - * any later version. - * - * GNU Radio is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - */ -#ifndef INCLUDED_MB_MSG_ACCEPTER_H -#define INCLUDED_MB_MSG_ACCEPTER_H - -#include <mb_common.h> - -/*! - * \brief Abstract class that accepts messages - * - * The mb_port::send method ultimately resolves the (local) - * destination of a send to an object of this type. The resulting - * object is called to deliver the message. - * - * Expect derived classes such as these: - * - * smp : target is visible in this address space - * mpi : target is on the other end of an MPI link - * ppe->spe : sending from Cell PPE to Cell SPE - * spe->ppe : sending from Cell SPE to Cell PPE - */ -class mb_msg_accepter { -public: - mb_msg_accepter(){}; - virtual ~mb_msg_accepter(); - - virtual void operator()(pmt_t signal, pmt_t data, pmt_t metadata, mb_pri_t priority) = 0; -}; - -#endif /* INCLUDED_MB_MSG_ACCEPTER_H */ diff --git a/mblock/src/lib/mb_msg_accepter_msgq.cc b/mblock/src/lib/mb_msg_accepter_msgq.cc index 8220dbfee..fb97914e5 100644 --- a/mblock/src/lib/mb_msg_accepter_msgq.cc +++ b/mblock/src/lib/mb_msg_accepter_msgq.cc @@ -1,6 +1,6 @@ /* -*- c++ -*- */ /* - * Copyright 2007 Free Software Foundation, Inc. + * Copyright 2007,2008 Free Software Foundation, Inc. * * This file is part of GNU Radio * @@ -23,7 +23,7 @@ #include <config.h> #endif #include <mb_msg_accepter_msgq.h> -#include <mb_message.h> +#include <mblock/message.h> pmt_t s_sys_port = pmt_intern("%sys-port"); diff --git a/mblock/src/lib/mb_msg_accepter_msgq.h b/mblock/src/lib/mb_msg_accepter_msgq.h index 1436e8c04..6c743bb4b 100644 --- a/mblock/src/lib/mb_msg_accepter_msgq.h +++ b/mblock/src/lib/mb_msg_accepter_msgq.h @@ -1,6 +1,6 @@ /* -*- c++ -*- */ /* - * Copyright 2007 Free Software Foundation, Inc. + * Copyright 2007,2008 Free Software Foundation, Inc. * * This file is part of GNU Radio * @@ -21,8 +21,8 @@ #ifndef INCLUDED_MB_MSG_ACCEPTER_MSGQ_H #define INCLUDED_MB_MSG_ACCEPTER_MSGQ_H -#include <mb_msg_accepter.h> -#include <mb_msg_queue.h> +#include <mblock/msg_accepter.h> +#include <mblock/msg_queue.h> /*! * \brief Concrete class that accepts messages and inserts them into a message queue. diff --git a/mblock/src/lib/mb_msg_accepter_smp.cc b/mblock/src/lib/mb_msg_accepter_smp.cc index ac3b4cfdb..3b392a8c1 100644 --- a/mblock/src/lib/mb_msg_accepter_smp.cc +++ b/mblock/src/lib/mb_msg_accepter_smp.cc @@ -1,6 +1,6 @@ /* -*- c++ -*- */ /* - * Copyright 2007 Free Software Foundation, Inc. + * Copyright 2007,2008 Free Software Foundation, Inc. * * This file is part of GNU Radio * @@ -23,10 +23,10 @@ #include <config.h> #endif #include <mb_msg_accepter_smp.h> -#include <mb_common.h> -#include <mb_mblock.h> +#include <mblock/common.h> +#include <mblock/mblock.h> #include <mb_mblock_impl.h> -#include <mb_message.h> +#include <mblock/message.h> mb_msg_accepter_smp::mb_msg_accepter_smp(mb_mblock_sptr mblock, pmt_t port_name) : d_mb(mblock), d_port_name(port_name) diff --git a/mblock/src/lib/mb_msg_accepter_smp.h b/mblock/src/lib/mb_msg_accepter_smp.h index 39eedf8f0..0e0cd7c64 100644 --- a/mblock/src/lib/mb_msg_accepter_smp.h +++ b/mblock/src/lib/mb_msg_accepter_smp.h @@ -21,7 +21,7 @@ #ifndef INCLUDED_MB_MSG_ACCEPTER_SMP_H #define INCLUDED_MB_MSG_ACCEPTER_SMP_H -#include <mb_msg_accepter.h> +#include <mblock/msg_accepter.h> /*! * \brief Concrete message acceptor that does an mb_msg_queue insertion diff --git a/mblock/src/lib/mb_msg_queue.cc b/mblock/src/lib/mb_msg_queue.cc index c5dd72fb5..c68c5fd64 100644 --- a/mblock/src/lib/mb_msg_queue.cc +++ b/mblock/src/lib/mb_msg_queue.cc @@ -1,6 +1,6 @@ /* -*- c++ -*- */ /* - * Copyright 2007 Free Software Foundation, Inc. + * Copyright 2007,2008 Free Software Foundation, Inc. * * This file is part of GNU Radio * @@ -22,8 +22,8 @@ #ifdef HAVE_CONFIG_H #include <config.h> #endif -#include <mb_msg_queue.h> -#include <mb_message.h> +#include <mblock/msg_queue.h> +#include <mblock/message.h> mb_msg_queue::mb_msg_queue() diff --git a/mblock/src/lib/mb_msg_queue.h b/mblock/src/lib/mb_msg_queue.h deleted file mode 100644 index a1cd43f14..000000000 --- a/mblock/src/lib/mb_msg_queue.h +++ /dev/null @@ -1,82 +0,0 @@ -/* -*- c++ -*- */ -/* - * Copyright 2007 Free Software Foundation, Inc. - * - * This file is part of GNU Radio - * - * GNU Radio is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 3, or (at your option) - * any later version. - * - * GNU Radio is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - */ -#ifndef INCLUDED_MB_MSG_QUEUE_H -#define INCLUDED_MB_MSG_QUEUE_H - -#include <mb_common.h> -#include <omnithread.h> -#include <mb_time.h> - -/*! - * \brief priority queue for mblock messages - */ -class mb_msg_queue : boost::noncopyable -{ - // When empty both head and tail are zero. - struct subq { - mb_message_sptr head; - mb_message_sptr tail; - - bool empty_p() const { return head == 0; } - }; - - omni_mutex d_mutex; - omni_condition d_not_empty; // reader waits on this - - // FIXME add bitmap to indicate which queues are non-empty. - subq d_queue[MB_NPRI]; - - mb_message_sptr get_highest_pri_msg_helper(); - -public: - mb_msg_queue(); - ~mb_msg_queue(); - - //! Insert \p msg into priority queue. - void insert(mb_message_sptr msg); - - /* - * \brief Delete highest pri message from the queue and return it. - * Returns equivalent of zero pointer if queue is empty. - */ - mb_message_sptr get_highest_pri_msg_nowait(); - - /* - * \brief Delete highest pri message from the queue and return it. - * If the queue is empty, this call blocks until it can return a message. - */ - mb_message_sptr get_highest_pri_msg(); - - /* - * \brief Delete highest pri message from the queue and return it. - * If the queue is empty, this call blocks until it can return a message - * or real-time exceeds the absolute time, abs_time. - * - * \param abs_time specifies the latest absolute time to wait until. - * \sa mb_time::time - * - * \returns a valid mb_message_sptr, or the equivalent of a zero pointer - * if the call timed out while waiting. - */ - mb_message_sptr get_highest_pri_msg_timedwait(const mb_time &abs_time); -}; - -#endif /* INCLUDED_MB_MSG_QUEUE_H */ diff --git a/mblock/src/lib/mb_port.cc b/mblock/src/lib/mb_port.cc index 959e89c72..a13f49f2c 100644 --- a/mblock/src/lib/mb_port.cc +++ b/mblock/src/lib/mb_port.cc @@ -1,6 +1,6 @@ /* -*- c++ -*- */ /* - * Copyright 2006 Free Software Foundation, Inc. + * Copyright 2006,2008 Free Software Foundation, Inc. * * This file is part of GNU Radio * @@ -23,8 +23,8 @@ #include <config.h> #endif -#include <mb_port.h> -#include <mb_protocol_class.h> +#include <mblock/port.h> +#include <mblock/protocol_class.h> mb_port::mb_port(mb_mblock *mblock, const std::string &port_name, diff --git a/mblock/src/lib/mb_port.h b/mblock/src/lib/mb_port.h deleted file mode 100644 index 0e9898bc4..000000000 --- a/mblock/src/lib/mb_port.h +++ /dev/null @@ -1,93 +0,0 @@ -/* -*- c++ -*- */ -/* - * Copyright 2006 Free Software Foundation, Inc. - * - * This file is part of GNU Radio - * - * GNU Radio is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 3, or (at your option) - * any later version. - * - * GNU Radio is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - */ -#ifndef INCLUDED_MB_PORT_H -#define INCLUDED_MB_PORT_H - -#include <mb_common.h> - -/*! - * \brief Abstract port characteristics - */ -class mb_port : boost::noncopyable -{ -public: - - //! port classification - enum port_type_t { - EXTERNAL, //< Externally visible - RELAY, //< Externally visible but really connected to a sub-component - INTERNAL //< Visible to self only - }; - -private: - - std::string d_port_name; - pmt_t d_port_symbol; // the port_name as a pmt symbol - pmt_t d_protocol_class; - bool d_conjugated; - port_type_t d_port_type; - -protected: - mb_mblock *d_mblock; // mblock we're defined in - - // protected constructor - mb_port(mb_mblock *mblock, - const std::string &port_name, - const std::string &protocol_class_name, - bool conjugated, - mb_port::port_type_t port_type); - - mb_mblock *mblock() const { return d_mblock; } - -public: - std::string port_name() const { return d_port_name; } - pmt_t port_symbol() const { return d_port_symbol; } - pmt_t protocol_class() const { return d_protocol_class; } - bool conjugated() const { return d_conjugated; } - port_type_t port_type() const { return d_port_type; } - - pmt_t incoming_message_set() const; - pmt_t outgoing_message_set() const; - - virtual ~mb_port(); - - /*! - * \brief send a message - * - * \param signal the event name - * \param data optional data - * \param metadata optional metadata - * \param priority the urgency at which the message is sent - */ - virtual void - send(pmt_t signal, - pmt_t data = PMT_F, - pmt_t metadata = PMT_F, - mb_pri_t priority = MB_PRI_DEFAULT) = 0; - - /* - * \brief Invalidate any cached peer resolutions - * \implementation - */ - virtual void invalidate_cache() = 0; -}; - -#endif /* INCLUDED_MB_PORT_H */ diff --git a/mblock/src/lib/mb_port_simple.cc b/mblock/src/lib/mb_port_simple.cc index 24a01b562..1b4b35cbf 100644 --- a/mblock/src/lib/mb_port_simple.cc +++ b/mblock/src/lib/mb_port_simple.cc @@ -1,6 +1,6 @@ /* -*- c++ -*- */ /* - * Copyright 2007 Free Software Foundation, Inc. + * Copyright 2007,2008 Free Software Foundation, Inc. * * This file is part of GNU Radio * @@ -24,9 +24,9 @@ #endif #include <mb_port_simple.h> -#include <mb_msg_accepter.h> -#include <mb_exception.h> -#include <mb_mblock.h> +#include <mblock/msg_accepter.h> +#include <mblock/exception.h> +#include <mblock/mblock.h> #include <mb_mblock_impl.h> #include <assert.h> #include <mbi_runtime_lock.h> diff --git a/mblock/src/lib/mb_port_simple.h b/mblock/src/lib/mb_port_simple.h index db9e226e6..3041239ad 100644 --- a/mblock/src/lib/mb_port_simple.h +++ b/mblock/src/lib/mb_port_simple.h @@ -1,6 +1,6 @@ /* -*- c++ -*- */ /* - * Copyright 2007 Free Software Foundation, Inc. + * Copyright 2007,2008 Free Software Foundation, Inc. * * This file is part of GNU Radio * @@ -21,7 +21,7 @@ #ifndef INCLUDED_MB_PORT_SIMPLE_H #define INCLUDED_MB_PORT_SIMPLE_H -#include <mb_port.h> +#include <mblock/port.h> /*! * \brief Concrete port realization diff --git a/mblock/src/lib/mb_protocol_class.cc b/mblock/src/lib/mb_protocol_class.cc index fb1f6531c..f076909e1 100644 --- a/mblock/src/lib/mb_protocol_class.cc +++ b/mblock/src/lib/mb_protocol_class.cc @@ -1,6 +1,6 @@ /* -*- c++ -*- */ /* - * Copyright 2006 Free Software Foundation, Inc. + * Copyright 2006,2008 Free Software Foundation, Inc. * * This file is part of GNU Radio * @@ -23,7 +23,7 @@ #include <config.h> #endif -#include <mb_protocol_class.h> +#include <mblock/protocol_class.h> #include <iostream> static pmt_t s_ALL_PROTOCOL_CLASSES = PMT_NIL; diff --git a/mblock/src/lib/mb_protocol_class.h b/mblock/src/lib/mb_protocol_class.h deleted file mode 100644 index 7a1d9afb6..000000000 --- a/mblock/src/lib/mb_protocol_class.h +++ /dev/null @@ -1,52 +0,0 @@ -/* -*- c++ -*- */ -/* - * Copyright 2006 Free Software Foundation, Inc. - * - * This file is part of GNU Radio - * - * GNU Radio is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 3, or (at your option) - * any later version. - * - * GNU Radio is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - */ -#ifndef INCLUDED_MB_PROTOCOL_CLASS_H -#define INCLUDED_MB_PROTOCOL_CLASS_H - -#include <mb_common.h> - -/*! - * \brief construct a protocol_class - * - * \param name the name of the class (symbol) - * \param incoming incoming message set (list of symbols) - * \param outgoing outgoing message set (list of symbols) - */ -pmt_t mb_make_protocol_class(pmt_t name, pmt_t incoming, pmt_t outgoing); - -// Accessors -pmt_t mb_protocol_class_name(pmt_t pc); //< return name of protocol class -pmt_t mb_protocol_class_incoming(pmt_t pc); //< return incoming message set -pmt_t mb_protocol_class_outgoing(pmt_t pc); //< return outgoing message set - -pmt_t mb_protocol_class_lookup(pmt_t name); //< lookup an existing protocol class by name - - -/*! - * \brief Initialize one or more protocol class from a serialized description. - * Used by machine generated code. - */ -class mb_protocol_class_init { -public: - mb_protocol_class_init(const char *data, size_t len); -}; - -#endif /* INCLUDED_MB_PROTOCOL_CLASS_H */ diff --git a/mblock/src/lib/mb_runtime.cc b/mblock/src/lib/mb_runtime.cc index 56ae2869c..57a05c416 100644 --- a/mblock/src/lib/mb_runtime.cc +++ b/mblock/src/lib/mb_runtime.cc @@ -1,6 +1,6 @@ /* -*- c++ -*- */ /* - * Copyright 2006 Free Software Foundation, Inc. + * Copyright 2006,2008 Free Software Foundation, Inc. * * This file is part of GNU Radio * @@ -23,7 +23,7 @@ #include <config.h> #endif -#include <mb_runtime.h> +#include <mblock/runtime.h> #include <mb_runtime_thread_per_block.h> mb_runtime_sptr diff --git a/mblock/src/lib/mb_runtime.h b/mblock/src/lib/mb_runtime.h deleted file mode 100644 index 1c9ebcab0..000000000 --- a/mblock/src/lib/mb_runtime.h +++ /dev/null @@ -1,68 +0,0 @@ -/* -*- c++ -*- */ -/* - * Copyright 2006 Free Software Foundation, Inc. - * - * This file is part of GNU Radio - * - * GNU Radio is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 3, or (at your option) - * any later version. - * - * GNU Radio is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - */ -#ifndef INCLUDED_MB_RUNTIME_H -#define INCLUDED_MB_RUNTIME_H - -#include <mb_common.h> -#include <omnithread.h> - -/*! - * \brief Public constructor (factory) for mb_runtime objects. - */ -mb_runtime_sptr mb_make_runtime(); - -/*! - * \brief Abstract runtime support for m-blocks - * - * There should generally be only a single instance of this class. - */ -class mb_runtime : boost::noncopyable, - public boost::enable_shared_from_this<mb_runtime> -{ -protected: - mb_mblock_sptr d_top; - -public: - mb_runtime(){} - virtual ~mb_runtime(); - - /*! - * \brief Construct and run the specified mblock hierarchy. - * - * This routine turns into the m-block scheduler, and - * blocks until the system is shutdown. - * - * \param name name of the top-level mblock (conventionally "top") - * \param class_name The class of the top-level mblock to create. - * \param user_arg The argument to pass to the top-level mblock constructor - * - * \returns true if the system ran successfully. - */ - virtual bool run(const std::string &instance_name, - const std::string &class_name, - pmt_t user_arg, - pmt_t *result = 0) = 0; - - // QA only... - mb_mblock_sptr top() { return d_top; } -}; - -#endif /* INCLUDED_MB_RUNTIME_H */ diff --git a/mblock/src/lib/mb_runtime_base.cc b/mblock/src/lib/mb_runtime_base.cc index c10c3168a..1dea4d46e 100644 --- a/mblock/src/lib/mb_runtime_base.cc +++ b/mblock/src/lib/mb_runtime_base.cc @@ -1,6 +1,6 @@ /* -*- c++ -*- */ /* - * Copyright 2007 Free Software Foundation, Inc. + * Copyright 2007,2008 Free Software Foundation, Inc. * * This file is part of GNU Radio * diff --git a/mblock/src/lib/mb_runtime_base.h b/mblock/src/lib/mb_runtime_base.h index 4872bd81e..019662bc2 100644 --- a/mblock/src/lib/mb_runtime_base.h +++ b/mblock/src/lib/mb_runtime_base.h @@ -22,9 +22,9 @@ #ifndef INCLUDED_MB_RUNTIME_BASE_H #define INCLUDED_MB_RUNTIME_BASE_H -#include <mb_runtime.h> +#include <mblock/runtime.h> #include <omnithread.h> -#include <mb_time.h> +#include <mblock/time.h> /* * \brief This is the runtime class used by the implementation. diff --git a/mblock/src/lib/mb_runtime_nop.cc b/mblock/src/lib/mb_runtime_nop.cc index 78bc0a1aa..603d5addb 100644 --- a/mblock/src/lib/mb_runtime_nop.cc +++ b/mblock/src/lib/mb_runtime_nop.cc @@ -1,6 +1,6 @@ /* -*- c++ -*- */ /* - * Copyright 2007 Free Software Foundation, Inc. + * Copyright 2007,2008 Free Software Foundation, Inc. * * This file is part of GNU Radio * @@ -23,9 +23,9 @@ #include <config.h> #endif #include <mb_runtime_nop.h> -#include <mb_mblock.h> -#include <mb_class_registry.h> -#include <mb_exception.h> +#include <mblock/mblock.h> +#include <mblock/class_registry.h> +#include <mblock/exception.h> mb_runtime_sptr mb_make_runtime_nop() diff --git a/mblock/src/lib/mb_runtime_thread_per_block.cc b/mblock/src/lib/mb_runtime_thread_per_block.cc index f1e4d10af..d12014a16 100644 --- a/mblock/src/lib/mb_runtime_thread_per_block.cc +++ b/mblock/src/lib/mb_runtime_thread_per_block.cc @@ -1,6 +1,6 @@ /* -*- c++ -*- */ /* - * Copyright 2007 Free Software Foundation, Inc. + * Copyright 2007,2008 Free Software Foundation, Inc. * * This file is part of GNU Radio * @@ -23,10 +23,10 @@ #include <config.h> #endif #include <mb_runtime_thread_per_block.h> -#include <mb_mblock.h> +#include <mblock/mblock.h> #include <mb_mblock_impl.h> -#include <mb_class_registry.h> -#include <mb_exception.h> +#include <mblock/class_registry.h> +#include <mblock/exception.h> #include <mb_worker.h> #include <omnithread.h> #include <iostream> diff --git a/mblock/src/lib/mb_runtime_thread_per_block.h b/mblock/src/lib/mb_runtime_thread_per_block.h index ed2dc046c..ef962911e 100644 --- a/mblock/src/lib/mb_runtime_thread_per_block.h +++ b/mblock/src/lib/mb_runtime_thread_per_block.h @@ -23,7 +23,7 @@ #include <mb_runtime_base.h> #include <mb_worker.h> -#include <mb_msg_queue.h> +#include <mblock/msg_queue.h> #include <mb_timer_queue.h> /*! diff --git a/mblock/src/lib/mb_time.h b/mblock/src/lib/mb_time.h deleted file mode 100644 index cba6be785..000000000 --- a/mblock/src/lib/mb_time.h +++ /dev/null @@ -1,27 +0,0 @@ -/* -*- c++ -*- */ -/* - * Copyright 2008 Free Software Foundation, Inc. - * - * This file is part of GNU Radio - * - * GNU Radio is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 3, or (at your option) - * any later version. - * - * GNU Radio is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - */ -#ifndef INCLUDED_MB_TIME_H -#define INCLUDED_MB_TIME_H - -#include <omni_time.h> -typedef omni_time mb_time; - -#endif /* INCLUDED_MB_TIME_H */ diff --git a/mblock/src/lib/mb_timer_queue.h b/mblock/src/lib/mb_timer_queue.h index 208e37d51..e8b8e1b64 100644 --- a/mblock/src/lib/mb_timer_queue.h +++ b/mblock/src/lib/mb_timer_queue.h @@ -1,6 +1,6 @@ /* -*- c++ -*- */ /* - * Copyright 2007 Free Software Foundation, Inc. + * Copyright 2007,2008 Free Software Foundation, Inc. * * This file is part of GNU Radio * @@ -22,11 +22,11 @@ #ifndef INCLUDED_MB_TIMER_QUEUE_H #define INCLUDED_MB_TIMER_QUEUE_H -#include <mb_time.h> +#include <mblock/time.h> #include <vector> #include <queue> #include <pmt.h> -#include <mb_msg_accepter.h> +#include <mblock/msg_accepter.h> class mb_timeout { public: diff --git a/mblock/src/lib/mb_worker.cc b/mblock/src/lib/mb_worker.cc index 4ac161e9d..e7ac6a9b4 100644 --- a/mblock/src/lib/mb_worker.cc +++ b/mblock/src/lib/mb_worker.cc @@ -1,6 +1,6 @@ /* -*- c++ -*- */ /* - * Copyright 2007 Free Software Foundation, Inc. + * Copyright 2007,2008 Free Software Foundation, Inc. * * This file is part of GNU Radio * @@ -24,10 +24,10 @@ #endif #include <mb_worker.h> #include <mb_runtime_thread_per_block.h> -#include <mb_exception.h> -#include <mb_mblock.h> +#include <mblock/exception.h> +#include <mblock/mblock.h> #include <mb_gettid.h> -#include <mb_msg_accepter.h> +#include <mblock/msg_accepter.h> #include <iostream> #ifdef HAVE_SCHED_H #include <sched.h> diff --git a/mblock/src/lib/mb_worker.h b/mblock/src/lib/mb_worker.h index d5937144c..b840ae557 100644 --- a/mblock/src/lib/mb_worker.h +++ b/mblock/src/lib/mb_worker.h @@ -1,6 +1,6 @@ /* -*- c++ -*- */ /* - * Copyright 2007 Free Software Foundation, Inc. + * Copyright 2007,2008 Free Software Foundation, Inc. * * This file is part of GNU Radio * @@ -23,8 +23,8 @@ #define INCLUDED_MB_WORKER_H #include <omnithread.h> -#include <mb_common.h> -#include <mb_class_registry.h> +#include <mblock/common.h> +#include <mblock/class_registry.h> class mb_worker; diff --git a/mblock/src/lib/mbi_runtime_lock.h b/mblock/src/lib/mbi_runtime_lock.h index a4dec76f5..020cd733c 100644 --- a/mblock/src/lib/mbi_runtime_lock.h +++ b/mblock/src/lib/mbi_runtime_lock.h @@ -1,6 +1,6 @@ /* -*- c++ -*- */ /* - * Copyright 2007 Free Software Foundation, Inc. + * Copyright 2007,2008 Free Software Foundation, Inc. * * This file is part of GNU Radio * @@ -22,7 +22,7 @@ #ifndef INCLUDED_MBI_RUNTIME_LOCK_H #define INCLUDED_MBI_RUNTIME_LOCK_H -#include <mb_runtime.h> +#include <mblock/runtime.h> #include <mb_mblock_impl.h> #include <boost/utility.hpp> diff --git a/mblock/src/lib/qa_bitset.cc b/mblock/src/lib/qa_bitset.cc index 85f388fc2..bc42ac8b0 100644 --- a/mblock/src/lib/qa_bitset.cc +++ b/mblock/src/lib/qa_bitset.cc @@ -1,6 +1,6 @@ /* -*- c++ -*- */ /* - * Copyright 2007 Free Software Foundation, Inc. + * Copyright 2007,2008 Free Software Foundation, Inc. * * This file is part of GNU Radio * @@ -22,10 +22,10 @@ #ifdef HAVE_CONFIG_H #include <config.h> #endif -#include <mb_mblock.h> -#include <mb_protocol_class.h> -#include <mb_message.h> -#include <mb_class_registry.h> +#include <mblock/mblock.h> +#include <mblock/protocol_class.h> +#include <mblock/message.h> +#include <mblock/class_registry.h> #include <iostream> #include <sstream> #include <bitset> diff --git a/mblock/src/lib/qa_disconnect.cc b/mblock/src/lib/qa_disconnect.cc index ff263da84..e098e8b29 100644 --- a/mblock/src/lib/qa_disconnect.cc +++ b/mblock/src/lib/qa_disconnect.cc @@ -1,6 +1,6 @@ /* -*- c++ -*- */ /* - * Copyright 2007 Free Software Foundation, Inc. + * Copyright 2007,2008 Free Software Foundation, Inc. * * This file is part of GNU Radio * @@ -22,10 +22,10 @@ #ifdef HAVE_CONFIG_H #include <config.h> #endif -#include <mb_mblock.h> -#include <mb_protocol_class.h> -#include <mb_message.h> -#include <mb_class_registry.h> +#include <mblock/mblock.h> +#include <mblock/protocol_class.h> +#include <mblock/message.h> +#include <mblock/class_registry.h> #include <iostream> #include <sstream> #include <bitset> diff --git a/mblock/src/lib/qa_mblock_prims.cc b/mblock/src/lib/qa_mblock_prims.cc index 6802986fa..2eed3afde 100644 --- a/mblock/src/lib/qa_mblock_prims.cc +++ b/mblock/src/lib/qa_mblock_prims.cc @@ -1,6 +1,6 @@ /* -*- c++ -*- */ /* - * Copyright 2006,2007 Free Software Foundation, Inc. + * Copyright 2006,2007,2008 Free Software Foundation, Inc. * * This file is part of GNU Radio * @@ -26,15 +26,15 @@ #include <qa_mblock_prims.h> #include <cppunit/TestAssert.h> -#include <mb_mblock.h> -#include <mb_runtime.h> -#include <mb_protocol_class.h> -#include <mb_exception.h> -#include <mb_msg_queue.h> -#include <mb_message.h> +#include <mblock/mblock.h> +#include <mblock/runtime.h> +#include <mblock/protocol_class.h> +#include <mblock/exception.h> +#include <mblock/msg_queue.h> +#include <mblock/message.h> #include <mb_mblock_impl.h> -#include <mb_msg_accepter.h> -#include <mb_class_registry.h> +#include <mblock/msg_accepter.h> +#include <mblock/class_registry.h> #include <stdio.h> static pmt_t s_cs = pmt_intern("cs"); diff --git a/mblock/src/lib/qa_mblock_send.cc b/mblock/src/lib/qa_mblock_send.cc index b9db971c7..114dbdc4e 100644 --- a/mblock/src/lib/qa_mblock_send.cc +++ b/mblock/src/lib/qa_mblock_send.cc @@ -1,6 +1,6 @@ /* -*- c++ -*- */ /* - * Copyright 2006,2007 Free Software Foundation, Inc. + * Copyright 2006,2007,2008 Free Software Foundation, Inc. * * This file is part of GNU Radio * @@ -26,16 +26,16 @@ #include <qa_mblock_send.h> #include <cppunit/TestAssert.h> -#include <mb_mblock.h> -#include <mb_runtime.h> +#include <mblock/mblock.h> +#include <mblock/runtime.h> #include <mb_runtime_nop.h> // QA only -#include <mb_protocol_class.h> -#include <mb_exception.h> -#include <mb_msg_queue.h> -#include <mb_message.h> +#include <mblock/protocol_class.h> +#include <mblock/exception.h> +#include <mblock/msg_queue.h> +#include <mblock/message.h> #include <mb_mblock_impl.h> -#include <mb_msg_accepter.h> -#include <mb_class_registry.h> +#include <mblock/msg_accepter.h> +#include <mblock/class_registry.h> #include <stdio.h> static pmt_t s_data = pmt_intern("data"); diff --git a/mblock/src/lib/qa_mblock_sys.cc b/mblock/src/lib/qa_mblock_sys.cc index 5991b7ffc..58e48f715 100644 --- a/mblock/src/lib/qa_mblock_sys.cc +++ b/mblock/src/lib/qa_mblock_sys.cc @@ -1,6 +1,6 @@ /* -*- c++ -*- */ /* - * Copyright 2006,2007 Free Software Foundation, Inc. + * Copyright 2006,2007,2008 Free Software Foundation, Inc. * * This file is part of GNU Radio * @@ -26,16 +26,16 @@ #include <qa_mblock_sys.h> #include <cppunit/TestAssert.h> -#include <mb_mblock.h> -#include <mb_runtime.h> +#include <mblock/mblock.h> +#include <mblock/runtime.h> #include <mb_runtime_nop.h> // QA only -#include <mb_protocol_class.h> -#include <mb_exception.h> -#include <mb_msg_queue.h> -#include <mb_message.h> +#include <mblock/protocol_class.h> +#include <mblock/exception.h> +#include <mblock/msg_queue.h> +#include <mblock/message.h> #include <mb_mblock_impl.h> -#include <mb_msg_accepter.h> -#include <mb_class_registry.h> +#include <mblock/msg_accepter.h> +#include <mblock/class_registry.h> #include <stdio.h> #include <string.h> #include <iostream> diff --git a/mblock/src/lib/qa_timeouts.cc b/mblock/src/lib/qa_timeouts.cc index 4f1eb46ee..2505635c1 100644 --- a/mblock/src/lib/qa_timeouts.cc +++ b/mblock/src/lib/qa_timeouts.cc @@ -1,6 +1,6 @@ /* -*- c++ -*- */ /* - * Copyright 2007 Free Software Foundation, Inc. + * Copyright 2007,2008 Free Software Foundation, Inc. * * This file is part of GNU Radio * @@ -24,12 +24,12 @@ #endif #include <qa_timeouts.h> #include <cppunit/TestAssert.h> -#include <mb_mblock.h> -#include <mb_runtime.h> -#include <mb_protocol_class.h> -#include <mb_message.h> -#include <mb_msg_accepter.h> -#include <mb_class_registry.h> +#include <mblock/mblock.h> +#include <mblock/runtime.h> +#include <mblock/protocol_class.h> +#include <mblock/message.h> +#include <mblock/msg_accepter.h> +#include <mblock/class_registry.h> #include <mb_timer_queue.h> #include <string.h> #include <iostream> |