summaryrefslogtreecommitdiff
path: root/gr-blocks/lib/max_blk_impl.cc
diff options
context:
space:
mode:
authorMarcus Müller <mmueller@gnuradio.org>2019-08-07 21:45:12 +0200
committerMarcus Müller <marcus@hostalia.de>2019-08-09 23:04:28 +0200
commitf7bbf2c1d8d780294f3e016aff239ca35eb6516e (patch)
treee09ab6112e02b2215b2d59ac24d3d6ea2edac745 /gr-blocks/lib/max_blk_impl.cc
parent78431dc6941e3acc67c858277dfe4a0ed583643c (diff)
Tree: clang-format without the include sorting
Diffstat (limited to 'gr-blocks/lib/max_blk_impl.cc')
-rw-r--r--gr-blocks/lib/max_blk_impl.cc128
1 files changed, 63 insertions, 65 deletions
diff --git a/gr-blocks/lib/max_blk_impl.cc b/gr-blocks/lib/max_blk_impl.cc
index 82caccf75f..9f2dcaf5a0 100644
--- a/gr-blocks/lib/max_blk_impl.cc
+++ b/gr-blocks/lib/max_blk_impl.cc
@@ -29,74 +29,72 @@
#include <gnuradio/io_signature.h>
namespace gr {
- namespace blocks {
-
- template <class T>
- typename max_blk<T>::sptr
- max_blk<T>::make(size_t vlen, size_t vlen_out)
- {
- return gnuradio::get_initial_sptr
- (new max_blk_impl<T> (vlen,vlen_out));
- }
-
- template <class T>
- max_blk_impl<T> ::max_blk_impl(size_t vlen, size_t vlen_out)
+namespace blocks {
+
+template <class T>
+typename max_blk<T>::sptr max_blk<T>::make(size_t vlen, size_t vlen_out)
+{
+ return gnuradio::get_initial_sptr(new max_blk_impl<T>(vlen, vlen_out));
+}
+
+template <class T>
+max_blk_impl<T>::max_blk_impl(size_t vlen, size_t vlen_out)
: sync_block("max_blk",
- io_signature::make(1, -1, vlen*sizeof(T)),
- io_signature::make(1, 1, vlen_out*sizeof(T))),
- d_vlen(vlen), d_vlen_out(vlen_out)
- {
- assert((vlen_out == vlen) || (vlen_out == 1));
- }
-
- template <class T>
- max_blk_impl<T> ::~max_blk_impl()
- {
- }
-
- template <class T>
- int
- max_blk_impl<T> ::work(int noutput_items,
- gr_vector_const_void_star &input_items,
- gr_vector_void_star &output_items)
- {
- T *optr = (T *)output_items[0];
-
- int ninputs = input_items.size();
-
- if(d_vlen_out == 1)
- for(int i = 0; i < noutput_items; i++) {
- T max = ((T *)input_items[0])[i*d_vlen];
-
- for(int j = 0; j < (int)d_vlen; j++ ) {
- for(int k = 0; k < ninputs; k++) {
- if(((T *)input_items[k])[i*d_vlen + j] > max) {
- max = ((T*)input_items[k])[i*d_vlen + j];
- }
- }
- }
-
- *optr++ = (T)max;
- }
-
- else // vector mode output
- for(size_t i = 0; i < (size_t)noutput_items * d_vlen_out; i++) {
- T max = ((T *)input_items[0])[i];
-
- for(int k = 1; k < ninputs; k++) {
- if(((T *)input_items[k])[i] > max) {
- max = ((T*)input_items[k])[i];
- }
- }
-
- *optr++ = (T)max;
- }
-
- return noutput_items;
- }
+ io_signature::make(1, -1, vlen * sizeof(T)),
+ io_signature::make(1, 1, vlen_out * sizeof(T))),
+ d_vlen(vlen),
+ d_vlen_out(vlen_out)
+{
+ assert((vlen_out == vlen) || (vlen_out == 1));
+}
+
+template <class T>
+max_blk_impl<T>::~max_blk_impl()
+{
+}
+
+template <class T>
+int max_blk_impl<T>::work(int noutput_items,
+ gr_vector_const_void_star& input_items,
+ gr_vector_void_star& output_items)
+{
+ T* optr = (T*)output_items[0];
+
+ int ninputs = input_items.size();
+
+ if (d_vlen_out == 1)
+ for (int i = 0; i < noutput_items; i++) {
+ T max = ((T*)input_items[0])[i * d_vlen];
+
+ for (int j = 0; j < (int)d_vlen; j++) {
+ for (int k = 0; k < ninputs; k++) {
+ if (((T*)input_items[k])[i * d_vlen + j] > max) {
+ max = ((T*)input_items[k])[i * d_vlen + j];
+ }
+ }
+ }
+
+ *optr++ = (T)max;
+ }
+
+ else // vector mode output
+ for (size_t i = 0; i < (size_t)noutput_items * d_vlen_out; i++) {
+ T max = ((T*)input_items[0])[i];
+
+ for (int k = 1; k < ninputs; k++) {
+ if (((T*)input_items[k])[i] > max) {
+ max = ((T*)input_items[k])[i];
+ }
+ }
+
+ *optr++ = (T)max;
+ }
+
+ return noutput_items;
+}
template class max_blk<std::int16_t>;
template class max_blk<std::int32_t>;
template class max_blk<float>;
- } /* namespace blocks */
+} /* namespace blocks */
} /* namespace gr */