diff options
Diffstat (limited to 'gr-pager/include/gnuradio')
-rw-r--r-- | gr-pager/include/gnuradio/pager/CMakeLists.txt | 32 | ||||
-rw-r--r-- | gr-pager/include/gnuradio/pager/api.h | 33 | ||||
-rw-r--r-- | gr-pager/include/gnuradio/pager/flex_deinterleave.h | 51 | ||||
-rw-r--r-- | gr-pager/include/gnuradio/pager/flex_frame.h | 48 | ||||
-rw-r--r-- | gr-pager/include/gnuradio/pager/flex_parse.h | 52 | ||||
-rw-r--r-- | gr-pager/include/gnuradio/pager/flex_sync.h | 49 | ||||
-rw-r--r-- | gr-pager/include/gnuradio/pager/slicer_fb.h | 53 |
7 files changed, 318 insertions, 0 deletions
diff --git a/gr-pager/include/gnuradio/pager/CMakeLists.txt b/gr-pager/include/gnuradio/pager/CMakeLists.txt new file mode 100644 index 0000000000..6577e7f4e6 --- /dev/null +++ b/gr-pager/include/gnuradio/pager/CMakeLists.txt @@ -0,0 +1,32 @@ +# Copyright 2012,2013 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 GNU Radio; see the file COPYING. If not, write to +# the Free Software Foundation, Inc., 51 Franklin Street, +# Boston, MA 02110-1301, USA. + +######################################################################## +# Install header files +######################################################################## +install(FILES + api.h + flex_frame.h + slicer_fb.h + flex_deinterleave.h + flex_parse.h + flex_sync.h + DESTINATION ${GR_INCLUDE_DIR}/gnuradio/pager + COMPONENT "pager_devel" +) diff --git a/gr-pager/include/gnuradio/pager/api.h b/gr-pager/include/gnuradio/pager/api.h new file mode 100644 index 0000000000..3d76e6761a --- /dev/null +++ b/gr-pager/include/gnuradio/pager/api.h @@ -0,0 +1,33 @@ +/* + * Copyright 2011 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 GNU Radio; see the file COPYING. If not, write to + * the Free Software Foundation, Inc., 51 Franklin Street, + * Boston, MA 02110-1301, USA. + */ + +#ifndef INCLUDED_PAGER_API_H +#define INCLUDED_PAGER_API_H + +#include <gnuradio/attributes.h> + +#ifdef gnuradio_pager_EXPORTS +# define PAGER_API __GR_ATTR_EXPORT +#else +# define PAGER_API __GR_ATTR_IMPORT +#endif + +#endif /* INCLUDED_PAGER_API_H */ diff --git a/gr-pager/include/gnuradio/pager/flex_deinterleave.h b/gr-pager/include/gnuradio/pager/flex_deinterleave.h new file mode 100644 index 0000000000..2b0c4353d6 --- /dev/null +++ b/gr-pager/include/gnuradio/pager/flex_deinterleave.h @@ -0,0 +1,51 @@ +/* -*- c++ -*- */ +/* + * Copyright 2006,2012 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 GNU Radio; see the file COPYING. If not, write to + * the Free Software Foundation, Inc., 51 Franklin Street, + * Boston, MA 02110-1301, USA. + */ + +#ifndef INCLUDED_PAGER_FLEX_DEINTERLEAVE_H +#define INCLUDED_PAGER_FLEX_DEINTERLEAVE_H + +#include <gnuradio/pager/api.h> +#include <gnuradio/sync_decimator.h> + +namespace gr { + namespace pager { + + /*! + * \brief flex deinterleave description + * \ingroup pager_blk + */ + class PAGER_API flex_deinterleave : virtual public sync_decimator + { + public: + // gr::pager::flex_deinterleave::sptr + typedef boost::shared_ptr<flex_deinterleave> sptr; + + /*! + * \brief Make flex deinterleaver + */ + static sptr make(); + }; + + } /* namespace pager */ +} /* namespace gr */ + +#endif /* INCLUDED_PAGER_FLEX_DEINTERLEAVE_H */ diff --git a/gr-pager/include/gnuradio/pager/flex_frame.h b/gr-pager/include/gnuradio/pager/flex_frame.h new file mode 100644 index 0000000000..7245c9a00c --- /dev/null +++ b/gr-pager/include/gnuradio/pager/flex_frame.h @@ -0,0 +1,48 @@ +/* -*- c++ -*- */ +/* + * Copyright 2006,2012 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 GNU Radio; see the file COPYING. If not, write to + * the Free Software Foundation, Inc., 51 Franklin Street, + * Boston, MA 02110-1301, USA. + */ + +#ifndef INCLUDED_PAGER_FLEX_FRAME_H +#define INCLUDED_PAGER_FLEX_FRAME_H + +#include <gnuradio/pager/api.h> +#include <boost/shared_ptr.hpp> + +namespace gr { + namespace pager { + + /*! + * \brief flex_frame. + * \ingroup pager_blk + */ + class PAGER_API flex_frame + { + public: + // gr::pager::flex_frame::sptr + typedef boost::shared_ptr<flex_frame> sptr; + + static sptr make(); + }; + + } /* namespace pager */ +} /* namespace gr */ + +#endif /* INCLUDED_PAGER_FLEX_FRAME_H */ diff --git a/gr-pager/include/gnuradio/pager/flex_parse.h b/gr-pager/include/gnuradio/pager/flex_parse.h new file mode 100644 index 0000000000..42adaff6e0 --- /dev/null +++ b/gr-pager/include/gnuradio/pager/flex_parse.h @@ -0,0 +1,52 @@ +/* -*- c++ -*- */ +/* + * Copyright 2006,2012 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 GNU Radio; see the file COPYING. If not, write to + * the Free Software Foundation, Inc., 51 Franklin Street, + * Boston, MA 02110-1301, USA. + */ + +#ifndef INCLUDED_PAGER_FLEX_PARSE_H +#define INCLUDED_PAGER_FLEX_PARSE_H + +#include <gnuradio/pager/api.h> +#include <gnuradio/sync_block.h> +#include <gnuradio/msg_queue.h> +#include <sstream> + +namespace gr { + namespace pager { + +#define FIELD_DELIM ((unsigned char)128) + + /*! + * \brief flex parse description + * \ingroup pager_blk + */ + class PAGER_API flex_parse : virtual public sync_block + { + public: + // gr::pager::flex_parse::sptr + typedef boost::shared_ptr<flex_parse> sptr; + + static sptr make(msg_queue::sptr queue, float freq); + }; + + } /* namespace pager */ +} /* namespace gr */ + +#endif /* INCLUDED_PAGER_FLEX_PARSE_H */ diff --git a/gr-pager/include/gnuradio/pager/flex_sync.h b/gr-pager/include/gnuradio/pager/flex_sync.h new file mode 100644 index 0000000000..54c3d827a2 --- /dev/null +++ b/gr-pager/include/gnuradio/pager/flex_sync.h @@ -0,0 +1,49 @@ +/* -*- 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 GNU Radio; see the file COPYING. If not, write to + * the Free Software Foundation, Inc., 51 Franklin Street, + * Boston, MA 02110-1301, USA. + */ + +#ifndef INCLUDED_PAGER_FLEX_SYNC_H +#define INCLUDED_PAGER_FLEX_SYNC_H + +#include <gnuradio/pager/api.h> +#include <gnuradio/block.h> + +namespace gr { + namespace pager { + + /*! + * \brief flex sync description + * \ingroup pager_blk + */ + class PAGER_API flex_sync : virtual public block + { + public: + // gr::pager::flex_sync::sptr + typedef boost::shared_ptr<flex_sync> sptr; + + static sptr make(); + + }; + + } /* namespace pager */ +} /* namespace gr */ + +#endif /* INCLUDED_PAGER_FLEX_SYNC_H */ diff --git a/gr-pager/include/gnuradio/pager/slicer_fb.h b/gr-pager/include/gnuradio/pager/slicer_fb.h new file mode 100644 index 0000000000..6f01a254c3 --- /dev/null +++ b/gr-pager/include/gnuradio/pager/slicer_fb.h @@ -0,0 +1,53 @@ +/* -*- c++ -*- */ +/* + * Copyright 2006,2007,2012 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 GNU Radio; see the file COPYING. If not, write to + * the Free Software Foundation, Inc., 51 Franklin Street, + * Boston, MA 02110-1301, USA. + */ + +#ifndef INCLUDED_PAGER_SLICER_FB_H +#define INCLUDED_PAGER_SLICER_FB_H + +#include <gnuradio/pager/api.h> +#include <gnuradio/sync_block.h> + +namespace gr { + namespace pager { + + /*! + * \brief slicer description + * \ingroup pager_blk + */ + class PAGER_API slicer_fb : virtual public sync_block + { + public: + // gr::pager::slicer_fb::sptr + typedef boost::shared_ptr<slicer_fb> sptr; + + /*! + * \brief Make a pager slicer + */ + static sptr make(float alpha); + + virtual float dc_offset() const = 0; + }; + + } /* namespace pager */ +} /* namespace gr */ + +#endif /* INCLUDED_PAGER_SLICER_FB_H */ |