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>
213 std::complex<float> k =
static_cast<std::complex<float>
>(
pmt::to_complex(msg));
285 std::vector< signed char >
351 std::vector< std::complex<float> >
439 template <
typename T>
456 template<
typename T,
typename Tto>
461 const char* functionbase,
462 void (T::*
function)(Tto),
464 const char* units_ =
"",
465 const char* desc_ =
"",
474 d_minpriv = minpriv_;
475 d_display = display_;
477 #ifdef RPCSERVER_ENABLED
480 minpriv_, std::string(units_),
481 display_, std::string(desc_), min, max, def);
482 std::ostringstream oss(std::ostringstream::out);
483 oss << block_alias <<
"::" << functionbase;
492 const char* functionbase,
494 void (T::*
function)(Tto),
496 const char* units_ =
"",
497 const char* desc_ =
"",
506 d_minpriv = minpriv_;
507 d_display = display_;
509 #ifdef RPCSERVER_ENABLED
512 minpriv_, std::string(units_),
513 display_, std::string(desc_), min, max, def);
514 std::ostringstream oss(std::ostringstream::out);
515 oss << name <<
"::" << functionbase;
524 #ifdef RPCSERVER_ENABLED
533 std::string
units()
const {
return d_units; }
541 void units(std::string u) { d_units = u; }
549 std::string d_units, d_desc;
556 template<
typename T,
typename Tfrom>
563 const char* functionbase,
564 Tfrom (T::*
function)(),
566 const char* units_ =
"",
567 const char* desc_ =
"",
576 d_minpriv = minpriv_;
577 d_display = display_;
579 #ifdef RPCSERVER_ENABLED
582 minpriv_, std::string(units_), display_, std::string(desc_), min, max, def);
583 std::ostringstream oss(std::ostringstream::out);
584 oss << block_alias <<
"::" << functionbase;
594 const char* functionbase,
595 Tfrom (T::*
function)()
const,
597 const char* units_ =
"",
598 const char* desc_ =
"",
607 d_minpriv = minpriv_;
608 d_display = display_;
610 #ifdef RPCSERVER_ENABLED
613 minpriv_, std::string(units_), display_, std::string(desc_), min, max, def);
614 std::ostringstream oss(std::ostringstream::out);
615 oss << block_alias <<
"::" << functionbase;
625 const char* functionbase,
627 Tfrom (T::*
function)(),
629 const char* units_ =
"",
630 const char* desc_ =
"",
639 d_minpriv = minpriv_;
640 d_display = display_;
642 #ifdef RPCSERVER_ENABLED
645 minpriv_, std::string(units_), display_, std::string(desc_), min, max, def);
646 std::ostringstream oss(std::ostringstream::out);
647 oss << name <<
"::" << functionbase;
657 const char* functionbase,
659 Tfrom (T::*
function)()
const,
661 const char* units_ =
"",
662 const char* desc_ =
"",
671 d_minpriv = minpriv_;
672 d_display = display_;
674 #ifdef RPCSERVER_ENABLED
677 minpriv_, std::string(units_), display_, std::string(desc_), min, max, def);
678 std::ostringstream oss(std::ostringstream::out);
679 oss << name <<
"::" << functionbase;
688 #ifdef RPCSERVER_ENABLED
696 std::string
units()
const {
return d_units; }
704 void units(std::string u) { d_units = u; }
712 std::string d_units, d_desc;
725 template<
typename Tfrom>
741 throw std::runtime_error(
"ERROR: rpcbasic_register_variable called with no args. If this happens, someone has tried to use rpcbasic_register_variable incorrectly.");
745 const char* functionbase,
748 const char* units_ =
"",
749 const char* desc_ =
"",
753 min, max, def, units_, desc_, minpriv_, display_),
766 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)
768 throw std::runtime_error(
"ERROR: rpcbasic_register_variable_rw called with no args. if this happens someone used rpcbasic_register_variable_rw incorrectly.\n");
772 const std::string& namebase,
773 const char* functionbase,
776 const char* units_ =
"",
777 const char* desc_ =
"",
781 d_rpc_regset(namebase,functionbase,this,&
rpcbasic_register_variable_rw::
set,min,max,def,units_,desc_,minpriv,display_)