23 #ifndef RPCREGISTERHELPERS_H
24 #define RPCREGISTERHELPERS_H
45 throw std::runtime_error(
"rpcextractor_base: no post defined for this data type.\n");
53 template<
typename T,
typename Tto>
62 template<
typename T,
typename Tfrom>
76 template<
typename T,
typename Tfrom>
183 std::complex<float> k =
static_cast<std::complex<float>
>(
pmt::to_complex(msg));
277 std::vector< std::complex<float> >
365 template <
typename T>
382 template<
typename T,
typename Tto>
387 const char* functionbase,
388 void (T::*
function)(Tto),
390 const char* units_ =
"",
391 const char* desc_ =
"",
400 d_minpriv = minpriv_;
401 d_display = display_;
403 #ifdef RPCSERVER_ENABLED
406 minpriv_, std::string(units_),
407 display_, std::string(desc_), min, max, def);
408 std::ostringstream oss(std::ostringstream::out);
409 oss << block_alias <<
"::" << functionbase;
418 const char* functionbase,
420 void (T::*
function)(Tto),
422 const char* units_ =
"",
423 const char* desc_ =
"",
432 d_minpriv = minpriv_;
433 d_display = display_;
435 #ifdef RPCSERVER_ENABLED
438 minpriv_, std::string(units_),
439 display_, std::string(desc_), min, max, def);
440 std::ostringstream oss(std::ostringstream::out);
441 oss << name <<
"::" << functionbase;
450 #ifdef RPCSERVER_ENABLED
459 std::string
units()
const {
return d_units; }
467 void units(std::string u) { d_units = u; }
475 std::string d_units, d_desc;
482 template<
typename T,
typename Tfrom>
489 const char* functionbase,
490 Tfrom (T::*
function)(),
492 const char* units_ =
"",
493 const char* desc_ =
"",
502 d_minpriv = minpriv_;
503 d_display = display_;
505 #ifdef RPCSERVER_ENABLED
508 minpriv_, std::string(units_), display_, std::string(desc_), min, max, def);
509 std::ostringstream oss(std::ostringstream::out);
510 oss << block_alias <<
"::" << functionbase;
520 const char* functionbase,
521 Tfrom (T::*
function)()
const,
523 const char* units_ =
"",
524 const char* desc_ =
"",
533 d_minpriv = minpriv_;
534 d_display = display_;
536 #ifdef RPCSERVER_ENABLED
539 minpriv_, std::string(units_), display_, std::string(desc_), min, max, def);
540 std::ostringstream oss(std::ostringstream::out);
541 oss << block_alias <<
"::" << functionbase;
551 const char* functionbase,
553 Tfrom (T::*
function)(),
555 const char* units_ =
"",
556 const char* desc_ =
"",
565 d_minpriv = minpriv_;
566 d_display = display_;
568 #ifdef RPCSERVER_ENABLED
571 minpriv_, std::string(units_), display_, std::string(desc_), min, max, def);
572 std::ostringstream oss(std::ostringstream::out);
573 oss << name <<
"::" << functionbase;
583 const char* functionbase,
585 Tfrom (T::*
function)()
const,
587 const char* units_ =
"",
588 const char* desc_ =
"",
597 d_minpriv = minpriv_;
598 d_display = display_;
600 #ifdef RPCSERVER_ENABLED
603 minpriv_, std::string(units_), display_, std::string(desc_), min, max, def);
604 std::ostringstream oss(std::ostringstream::out);
605 oss << name <<
"::" << functionbase;
614 #ifdef RPCSERVER_ENABLED
622 std::string
units()
const {
return d_units; }
630 void units(std::string u) { d_units = u; }
638 std::string d_units, d_desc;
651 template<
typename Tfrom>
667 throw std::runtime_error(
"ERROR: rpcbasic_register_variable called with no args. If this happens, someone has tried to use rpcbasic_register_variable incorrectly.");
671 const char* functionbase,
674 const char* units_ =
"",
675 const char* desc_ =
"",
679 min, max, def, units_, desc_, minpriv_, display_),
692 d_rpc_regset(
"FAIL",
"FAIL",this,&
rpcbasic_register_variable<Tfrom>::
get,pmt::
PMT_NIL,pmt::
PMT_NIL,pmt::
PMT_NIL,
DISPNULL,
"FAIL",
"FAIL",
RPC_PRIVLVL_MIN)
694 throw std::runtime_error(
"ERROR: rpcbasic_register_variable_rw called with no args. if this happens someone used rpcbasic_register_variable_rw incorrectly.\n");
698 const std::string& namebase,
699 const char* functionbase,
702 const char* units_ =
"",
703 const char* desc_ =
"",
707 d_rpc_regset(namebase,functionbase,this,&
rpcbasic_register_variable_rw::
set,min,max,def,units_,desc_,minpriv,display_)