X-Git-Url: https://git.gag.com/?a=blobdiff_plain;ds=sidebyside;f=gnuradio-core%2Fsrc%2Flib%2Fgeneral%2Fgr_skiphead.h;h=965feff9b2015a0aa159db7c95f36d8c09337f65;hb=ea29b08aeb54227e6628f655ccfdb96fe4d8c378;hp=81898ef404c10923ae4a3b344bce73e894286980;hpb=18a684bf3dc144c48fc4cc6cc72f5070febd8074;p=debian%2Fgnuradio diff --git a/gnuradio-core/src/lib/general/gr_skiphead.h b/gnuradio-core/src/lib/general/gr_skiphead.h index 81898ef4..965feff9 100644 --- a/gnuradio-core/src/lib/general/gr_skiphead.h +++ b/gnuradio-core/src/lib/general/gr_skiphead.h @@ -6,7 +6,7 @@ * * 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 2, or (at your option) + * 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, @@ -26,29 +26,35 @@ #include #include // size_t +class gr_skiphead; +typedef boost::shared_ptr gr_skiphead_sptr; + + /*! * \brief skips the first N items, from then on copies items to the output - * \ingroup block + * \ingroup slicedice_blk * * Useful for building test cases and sources which have metadata or junk at the start */ -class gr_skiphead : public gr_sync_block +class gr_skiphead : public gr_block { - friend gr_block_sptr gr_make_skiphead (size_t sizeof_stream_item, int nitems); - gr_skiphead (size_t sizeof_stream_item, int nitems); + friend gr_skiphead_sptr gr_make_skiphead (size_t itemsize, size_t nitems_to_skip); + gr_skiphead (size_t itemsize, size_t nitems_to_skip); - int d_nitems; - int d_nskipped_items; + long long d_nitems_to_skip; + long long d_nitems; // total items seen public: - int work (int noutput_items, - gr_vector_const_void_star &input_items, - gr_vector_void_star &output_items); + + int general_work(int noutput_items, + gr_vector_int &ninput_items, + gr_vector_const_void_star &input_items, + gr_vector_void_star &output_items); }; -gr_block_sptr -gr_make_skiphead (size_t sizeof_stream_item, int nitems); +gr_skiphead_sptr +gr_make_skiphead (size_t itemsize, size_t nitems_to_skip); #endif /* INCLUDED_GR_SKIPHEAD_H */