summaryrefslogtreecommitdiff
path: root/include/gnuradio
diff options
context:
space:
mode:
Diffstat (limited to 'include/gnuradio')
-rw-r--r--include/gnuradio/block.hpp12
-rw-r--r--include/gnuradio/gr_block.h4
-rw-r--r--include/gnuradio/gr_io_signature.h3
3 files changed, 14 insertions, 5 deletions
diff --git a/include/gnuradio/block.hpp b/include/gnuradio/block.hpp
index 87ebb33..2bfc5b6 100644
--- a/include/gnuradio/block.hpp
+++ b/include/gnuradio/block.hpp
@@ -86,13 +86,21 @@ struct GR_RUNTIME_API Block : Element
std::string name(void) const;
+ size_t input_size(const size_t which_input) const;
+
+ size_t output_size(const size_t which_output) const;
+
+ void set_input_size(const size_t size, const size_t which_input);
+
+ void set_output_size(const size_t size, const size_t which_output);
+
size_t history(const size_t which_input = 0) const;
void set_history(const size_t history, const size_t which_input = 0);
- void set_output_multiple(const size_t multiple, const size_t which_input = 0);
+ void set_output_multiple(const size_t multiple, const size_t which_output = 0);
- size_t output_multiple(const size_t which_input = 0) const;
+ size_t output_multiple(const size_t which_output = 0) const;
void consume(const size_t which_input, const size_t how_many_items);
diff --git a/include/gnuradio/gr_block.h b/include/gnuradio/gr_block.h
index 4c9b5c2..cdb5d4a 100644
--- a/include/gnuradio/gr_block.h
+++ b/include/gnuradio/gr_block.h
@@ -42,9 +42,9 @@ struct GR_RUNTIME_API gr_block : gnuradio::Block
void set_input_signature(gr_io_signature_sptr);
- gr_io_signature_sptr input_signature(void);
+ gr_io_signature_sptr input_signature(void) const;
- gr_io_signature_sptr output_signature(void);
+ gr_io_signature_sptr output_signature(void) const;
//! implements work -> calls general work
int work(
diff --git a/include/gnuradio/gr_io_signature.h b/include/gnuradio/gr_io_signature.h
index 26a9884..870c1f5 100644
--- a/include/gnuradio/gr_io_signature.h
+++ b/include/gnuradio/gr_io_signature.h
@@ -76,10 +76,11 @@ inline gr_io_signature_sptr gr_make_io_signature3(
return io_sig;
}
+template <typename T>
inline gr_io_signature_sptr gr_make_io_signaturev(
int min_streams,
int max_streams,
- const std::vector<int> &sizeof_stream_items
+ const std::vector<T> &sizeof_stream_items
){
gr_io_signature_sptr io_sig(new gnuradio::IOSignature());
io_sig->set_min_streams(min_streams);