gr_io_signature.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023 #ifndef INCLUDED_IO_SIGNATURE_H
00024 #define INCLUDED_IO_SIGNATURE_H
00025
00026 #include <gr_runtime_types.h>
00027
00036 gr_io_signature_sptr
00037 gr_make_io_signature(int min_streams, int max_streams,
00038 int sizeof_stream_item);
00039
00048 gr_io_signature_sptr
00049 gr_make_io_signature2(int min_streams, int max_streams,
00050 int sizeof_stream_item1,
00051 int sizeof_stream_item2
00052 );
00053
00063 gr_io_signature_sptr
00064 gr_make_io_signature3(int min_streams, int max_streams,
00065 int sizeof_stream_item1,
00066 int sizeof_stream_item2,
00067 int sizeof_stream_item3
00068 );
00069
00081 gr_io_signature_sptr
00082 gr_make_io_signaturev(int min_streams, int max_streams,
00083 const std::vector<int> &sizeof_stream_items);
00084
00085
00089 class gr_io_signature {
00090 int d_min_streams;
00091 int d_max_streams;
00092 std::vector<int> d_sizeof_stream_item;
00093
00094 gr_io_signature(int min_streams, int max_streams,
00095 const std::vector<int> &sizeof_stream_items);
00096
00097 friend gr_io_signature_sptr
00098 gr_make_io_signaturev(int min_streams,
00099 int max_streams,
00100 const std::vector<int> &sizeof_stream_item);
00101
00102 public:
00103
00104 static const int IO_INFINITE = -1;
00105
00106 ~gr_io_signature ();
00107
00108 int min_streams () const { return d_min_streams; }
00109 int max_streams () const { return d_max_streams; }
00110 int sizeof_stream_item (int index) const;
00111 std::vector<int> sizeof_stream_items() const;
00112 };
00113
00114
00115 #endif