3 * Copyright 2009 Free Software Foundation, Inc.
5 * This file is part of GNU Radio
7 * GNU Radio is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License as published by
9 * the Free Software Foundation; either version 3, or (at your option)
12 * GNU Radio is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 * GNU General Public License for more details.
17 * You should have received a copy of the GNU General Public License along
18 * with this program; if not, write to the Free Software Foundation, Inc.,
19 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
21 #ifndef INCLUDED_GRUEL_PMT_SUGAR_H
22 #define INCLUDED_GRUEL_PMT_SUGAR_H
25 * This file is included by pmt.h and contains pseudo-constructor
26 * shorthand for making pmt objects
33 mp(const std::string &s)
35 return pmt_string_to_symbol(s);
42 return pmt_string_to_symbol(s);
48 return pmt_from_long(x);
54 return pmt_from_long(x);
60 return pmt_from_double(x);
65 mp(std::complex<double> z)
67 return pmt_make_rectangular(z.real(), z.imag());
72 mp(std::complex<float> z)
74 return pmt_make_rectangular(z.real(), z.imag());
77 //! Make pmt msg_accepter
79 mp(boost::shared_ptr<gruel::msg_accepter> ma)
81 return pmt_make_msg_accepter(ma);
84 //! Make pmt Binary Large Object (BLOB)
86 mp(const void *data, size_t len_in_bytes)
88 return pmt_make_blob(data, len_in_bytes);
95 return pmt_make_tuple(e0);
100 mp(const pmt_t &e0, const pmt_t &e1)
102 return pmt_make_tuple(e0, e1);
107 mp(const pmt_t &e0, const pmt_t &e1, const pmt_t &e2)
109 return pmt_make_tuple(e0, e1, e2);
114 mp(const pmt_t &e0, const pmt_t &e1, const pmt_t &e2, const pmt_t &e3)
116 return pmt_make_tuple(e0, e1, e2, e3);
121 mp(const pmt_t &e0, const pmt_t &e1, const pmt_t &e2, const pmt_t &e3, const pmt_t &e4)
123 return pmt_make_tuple(e0, e1, e2, e3, e4);
128 mp(const pmt_t &e0, const pmt_t &e1, const pmt_t &e2, const pmt_t &e3, const pmt_t &e4, const pmt_t &e5)
130 return pmt_make_tuple(e0, e1, e2, e3, e4, e5);
135 mp(const pmt_t &e0, const pmt_t &e1, const pmt_t &e2, const pmt_t &e3, const pmt_t &e4, const pmt_t &e5, const pmt_t &e6)
137 return pmt_make_tuple(e0, e1, e2, e3, e4, e5, e6);
142 mp(const pmt_t &e0, const pmt_t &e1, const pmt_t &e2, const pmt_t &e3, const pmt_t &e4, const pmt_t &e5, const pmt_t &e6, const pmt_t &e7)
144 return pmt_make_tuple(e0, e1, e2, e3, e4, e5, e6, e7);
149 mp(const pmt_t &e0, const pmt_t &e1, const pmt_t &e2, const pmt_t &e3, const pmt_t &e4, const pmt_t &e5, const pmt_t &e6, const pmt_t &e7, const pmt_t &e8)
151 return pmt_make_tuple(e0, e1, e2, e3, e4, e5, e6, e7, e8);
156 mp(const pmt_t &e0, const pmt_t &e1, const pmt_t &e2, const pmt_t &e3, const pmt_t &e4, const pmt_t &e5, const pmt_t &e6, const pmt_t &e7, const pmt_t &e8, const pmt_t &e9)
158 return pmt_make_tuple(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9);
162 } /* namespace pmt */
165 #endif /* INCLUDED_GRUEL_PMT_SUGAR_H */