<?xml version='1.0' encoding='UTF-8' standalone='no'?>
<doxygen xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="compound.xsd" version="1.16.1" xml:lang="en-US">
  <compounddef id="structrpcbasic__register__trigger" kind="struct" language="C++" prot="public">
    <compoundname>rpcbasic_register_trigger</compoundname>
    <basecompoundref refid="classrpcbasic__base" prot="public" virt="non-virtual">rpcbasic_base</basecompoundref>
    <includes refid="rpcregisterhelpers_8h" local="no">gnuradio/rpcregisterhelpers.h</includes>
    <templateparamlist>
      <param>
        <type>typename T</type>
      </param>
    </templateparamlist>
    <sectiondef kind="private-attrib">
      <memberdef kind="variable" id="structrpcbasic__register__trigger_1a934edfad9a76e59ef1e1b4ea457db59b" prot="private" static="no" mutable="no">
        <type>std::string</type>
        <definition>std::string rpcbasic_register_trigger&lt; T &gt;::d_id</definition>
        <argsstring></argsstring>
        <name>d_id</name>
        <qualifiedname>rpcbasic_register_trigger::d_id</qualifiedname>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="gnuradio-runtime/include/gnuradio/rpcregisterhelpers.h" line="1063" column="17" bodyfile="gnuradio-runtime/include/gnuradio/rpcregisterhelpers.h" bodystart="1063" bodyend="-1"/>
      </memberdef>
      <memberdef kind="variable" id="structrpcbasic__register__trigger_1ae77f18abbb182322080568054576683f" prot="private" static="no" mutable="no">
        <type>std::string</type>
        <definition>std::string rpcbasic_register_trigger&lt; T &gt;::d_desc</definition>
        <argsstring></argsstring>
        <name>d_desc</name>
        <qualifiedname>rpcbasic_register_trigger::d_desc</qualifiedname>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="gnuradio-runtime/include/gnuradio/rpcregisterhelpers.h" line="1064" column="17" bodyfile="gnuradio-runtime/include/gnuradio/rpcregisterhelpers.h" bodystart="1064" bodyend="-1"/>
      </memberdef>
      <memberdef kind="variable" id="structrpcbasic__register__trigger_1a83bae0bc61f2673278e95381eea55e60" prot="private" static="no" mutable="no">
        <type><ref refid="rpccallbackregister__base_8h_1a49bbe5b25d6264b2ebfc1ffd260cb096" kindref="member">priv_lvl_t</ref></type>
        <definition>priv_lvl_t rpcbasic_register_trigger&lt; T &gt;::d_minpriv</definition>
        <argsstring></argsstring>
        <name>d_minpriv</name>
        <qualifiedname>rpcbasic_register_trigger::d_minpriv</qualifiedname>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="gnuradio-runtime/include/gnuradio/rpcregisterhelpers.h" line="1065" column="16" bodyfile="gnuradio-runtime/include/gnuradio/rpcregisterhelpers.h" bodystart="1065" bodyend="-1"/>
      </memberdef>
      <memberdef kind="variable" id="structrpcbasic__register__trigger_1aa5306026bde3ca423d78918ef31d9051" prot="private" static="no" mutable="no">
        <type>T *</type>
        <definition>T* rpcbasic_register_trigger&lt; T &gt;::d_object</definition>
        <argsstring></argsstring>
        <name>d_object</name>
        <qualifiedname>rpcbasic_register_trigger::d_object</qualifiedname>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="gnuradio-runtime/include/gnuradio/rpcregisterhelpers.h" line="1066" column="7" bodyfile="gnuradio-runtime/include/gnuradio/rpcregisterhelpers.h" bodystart="1066" bodyend="-1"/>
      </memberdef>
    </sectiondef>
    <sectiondef kind="public-func">
      <memberdef kind="function" id="structrpcbasic__register__trigger_1af0b1d8ee78a476cfe521a90a7042a2f4" prot="public" static="no" const="no" explicit="no" inline="yes" virt="non-virtual">
        <type></type>
        <definition>rpcbasic_register_trigger&lt; T &gt;::rpcbasic_register_trigger</definition>
        <argsstring>(const std::string &amp;block_alias, const char *functionbase, void(T::*function)(), const char *desc_=&quot;&quot;, priv_lvl_t minpriv_=RPC_PRIVLVL_MIN)</argsstring>
        <name>rpcbasic_register_trigger</name>
        <qualifiedname>rpcbasic_register_trigger::rpcbasic_register_trigger</qualifiedname>
        <param>
          <type>const std::string &amp;</type>
          <declname>block_alias</declname>
        </param>
        <param>
          <type>const char *</type>
          <declname>functionbase</declname>
        </param>
        <param>
          <type>void(T::*)()</type>
          <declname>function</declname>
        </param>
        <param>
          <type>const char *</type>
          <declname>desc_</declname>
          <defval>&quot;&quot;</defval>
        </param>
        <param>
          <type><ref refid="rpccallbackregister__base_8h_1a49bbe5b25d6264b2ebfc1ffd260cb096" kindref="member">priv_lvl_t</ref></type>
          <declname>minpriv_</declname>
          <defval><ref refid="rpccallbackregister__base_8h_1a49bbe5b25d6264b2ebfc1ffd260cb096acc5682c79636a2486c194425df36d2d4" kindref="member">RPC_PRIVLVL_MIN</ref></defval>
        </param>
        <briefdescription>
<para>Adds the ability to trigger a function over ControlPort. </para>
        </briefdescription>
        <detaileddescription>
<para>This constructor is specifically for <ref refid="classgr_1_1block" kindref="compound">gr::block</ref>&apos;s to use to add trigger functions to ControlPort. Generally meant to be used in <ref refid="classgr_1_1basic__block_1a7f8bf6b9f28014657a6e8b5f25ca7802" kindref="member">gr::block::setup_rpc</ref>.</para>
<para>Uses the block&apos;s alias to create the ControlPort interface. This alias is cross-referenced by the global_block_registry (static variable of type <ref refid="classgr_1_1block__registry" kindref="compound">gr::block_registry</ref>) to get the pointer to the block.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>block_alias</parametername>
</parameternamelist>
<parameterdescription>
<para>Block&apos;s alias; use alias() to get it from the block. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>functionbase</parametername>
</parameternamelist>
<parameterdescription>
<para>The name of the function that we&apos;ll access over ControlPort </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>function</parametername>
</parameternamelist>
<parameterdescription>
<para>A function pointer to the real function accessed when called something like: &amp;[block class]::set_[variable] </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>desc_</parametername>
</parameternamelist>
<parameterdescription>
<para>A string to describing the variable. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>minpriv_</parametername>
</parameternamelist>
<parameterdescription>
<para>The required minimum privilege level </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="gnuradio-runtime/include/gnuradio/rpcregisterhelpers.h" line="984" column="5" bodyfile="gnuradio-runtime/include/gnuradio/rpcregisterhelpers.h" bodystart="984" bodyend="1005"/>
        <references refid="classrpcmanager_1a1ba8b0847e9023e46e32e20d189e8d03">rpcmanager::get</references>
        <references refid="block__registry_8h_1ae4e7cd1be7c7f7e231b1644731f18eeb">global_block_registry</references>
        <references refid="classrpcserver__booter__base_1aa6e5532f1193df5bff6bc34645982c67">rpcserver_booter_base::i</references>
        <references refid="namespacepmt_1a2a19d2e56f6fbb5645ad17a5937b5f2f">pmt::intern</references>
        <references refid="classrpcserver__base_1aa491e67a02853f04259ec823bca858c9">rpcserver_base::registerConfigureCallback</references>
        <references refid="rpccallbackregister__base_8h_1a49bbe5b25d6264b2ebfc1ffd260cb096acc5682c79636a2486c194425df36d2d4" compoundref="rpccallbackregister__base_8h" startline="34">RPC_PRIVLVL_MIN</references>
      </memberdef>
      <memberdef kind="function" id="structrpcbasic__register__trigger_1a9e0289b6dced5cefc560708771920626" prot="public" static="no" const="no" explicit="no" inline="yes" virt="non-virtual">
        <type></type>
        <definition>rpcbasic_register_trigger&lt; T &gt;::rpcbasic_register_trigger</definition>
        <argsstring>(const std::string &amp;name, const char *functionbase, T *obj, void(T::*function)(), const char *desc_=&quot;&quot;, priv_lvl_t minpriv_=RPC_PRIVLVL_MIN)</argsstring>
        <name>rpcbasic_register_trigger</name>
        <qualifiedname>rpcbasic_register_trigger::rpcbasic_register_trigger</qualifiedname>
        <param>
          <type>const std::string &amp;</type>
          <declname>name</declname>
        </param>
        <param>
          <type>const char *</type>
          <declname>functionbase</declname>
        </param>
        <param>
          <type>T *</type>
          <declname>obj</declname>
        </param>
        <param>
          <type>void(T::*)()</type>
          <declname>function</declname>
        </param>
        <param>
          <type>const char *</type>
          <declname>desc_</declname>
          <defval>&quot;&quot;</defval>
        </param>
        <param>
          <type><ref refid="rpccallbackregister__base_8h_1a49bbe5b25d6264b2ebfc1ffd260cb096" kindref="member">priv_lvl_t</ref></type>
          <declname>minpriv_</declname>
          <defval><ref refid="rpccallbackregister__base_8h_1a49bbe5b25d6264b2ebfc1ffd260cb096acc5682c79636a2486c194425df36d2d4" kindref="member">RPC_PRIVLVL_MIN</ref></defval>
        </param>
        <briefdescription>
<para>Adds the ability to trigger a function over ControlPort. </para>
        </briefdescription>
        <detaileddescription>
<para>Allows us to add non <ref refid="classgr_1_1block" kindref="compound">gr::block</ref> related objects to ControlPort. Instead of using the block&apos;s alias, we give it a <computeroutput>name</computeroutput> and the actual pointer to the object as <computeroutput>obj</computeroutput>. We just need to make sure that the pointer to this object is always valid.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>name</parametername>
</parameternamelist>
<parameterdescription>
<para>Name of the object being set up for ControlPort access </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>functionbase</parametername>
</parameternamelist>
<parameterdescription>
<para>The name of the function that we&apos;ll access over ControlPort </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>obj</parametername>
</parameternamelist>
<parameterdescription>
<para>A pointer to the object itself </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>function</parametername>
</parameternamelist>
<parameterdescription>
<para>A function pointer to the real function accessed when called something like: &amp;[block class]::set_[variable] </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>desc_</parametername>
</parameternamelist>
<parameterdescription>
<para>A string to describing the variable. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>minpriv_</parametername>
</parameternamelist>
<parameterdescription>
<para>The required minimum privilege level </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="gnuradio-runtime/include/gnuradio/rpcregisterhelpers.h" line="1025" column="5" bodyfile="gnuradio-runtime/include/gnuradio/rpcregisterhelpers.h" bodystart="1025" bodyend="1046"/>
        <references refid="classrpcmanager_1a1ba8b0847e9023e46e32e20d189e8d03">rpcmanager::get</references>
        <references refid="classrpcserver__booter__base_1aa6e5532f1193df5bff6bc34645982c67">rpcserver_booter_base::i</references>
        <references refid="classrpcserver__base_1aa491e67a02853f04259ec823bca858c9">rpcserver_base::registerConfigureCallback</references>
        <references refid="rpccallbackregister__base_8h_1a49bbe5b25d6264b2ebfc1ffd260cb096acc5682c79636a2486c194425df36d2d4" compoundref="rpccallbackregister__base_8h" startline="34">RPC_PRIVLVL_MIN</references>
      </memberdef>
      <memberdef kind="function" id="structrpcbasic__register__trigger_1ace474a763e4408737104e9645ea142e7" prot="public" static="no" const="no" explicit="no" inline="yes" virt="non-virtual">
        <type></type>
        <definition>rpcbasic_register_trigger&lt; T &gt;::~rpcbasic_register_trigger</definition>
        <argsstring>() override</argsstring>
        <name>~rpcbasic_register_trigger</name>
        <qualifiedname>rpcbasic_register_trigger::~rpcbasic_register_trigger</qualifiedname>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="gnuradio-runtime/include/gnuradio/rpcregisterhelpers.h" line="1048" column="5" bodyfile="gnuradio-runtime/include/gnuradio/rpcregisterhelpers.h" bodystart="1048" bodyend="1053"/>
        <references refid="classrpcmanager_1a1ba8b0847e9023e46e32e20d189e8d03">rpcmanager::get</references>
        <references refid="classrpcserver__booter__base_1aa6e5532f1193df5bff6bc34645982c67">rpcserver_booter_base::i</references>
        <references refid="classrpcserver__base_1a664a295c7de0083e6f3a2f3f2ab93b70">rpcserver_base::unregisterConfigureCallback</references>
      </memberdef>
      <memberdef kind="function" id="structrpcbasic__register__trigger_1a60dd38850f432cacc56d3fc346ab81ec" prot="public" static="no" const="yes" explicit="no" inline="yes" virt="non-virtual">
        <type>std::string</type>
        <definition>std::string rpcbasic_register_trigger&lt; T &gt;::description</definition>
        <argsstring>() const</argsstring>
        <name>description</name>
        <qualifiedname>rpcbasic_register_trigger::description</qualifiedname>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="gnuradio-runtime/include/gnuradio/rpcregisterhelpers.h" line="1056" column="17" bodyfile="gnuradio-runtime/include/gnuradio/rpcregisterhelpers.h" bodystart="1056" bodyend="1056"/>
      </memberdef>
      <memberdef kind="function" id="structrpcbasic__register__trigger_1a663c35cc3952b70f363d529c98dbfe6f" prot="public" static="no" const="yes" explicit="no" inline="yes" virt="non-virtual">
        <type><ref refid="rpccallbackregister__base_8h_1a49bbe5b25d6264b2ebfc1ffd260cb096" kindref="member">priv_lvl_t</ref></type>
        <definition>priv_lvl_t rpcbasic_register_trigger&lt; T &gt;::privilege_level</definition>
        <argsstring>() const</argsstring>
        <name>privilege_level</name>
        <qualifiedname>rpcbasic_register_trigger::privilege_level</qualifiedname>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="gnuradio-runtime/include/gnuradio/rpcregisterhelpers.h" line="1057" column="16" bodyfile="gnuradio-runtime/include/gnuradio/rpcregisterhelpers.h" bodystart="1057" bodyend="1057"/>
      </memberdef>
      <memberdef kind="function" id="structrpcbasic__register__trigger_1a1d18e5b4627aabc3ca3d1da66a768304" prot="public" static="no" const="no" explicit="no" inline="yes" virt="non-virtual">
        <type>void</type>
        <definition>void rpcbasic_register_trigger&lt; T &gt;::description</definition>
        <argsstring>(std::string d)</argsstring>
        <name>description</name>
        <qualifiedname>rpcbasic_register_trigger::description</qualifiedname>
        <param>
          <type>std::string</type>
          <declname>d</declname>
        </param>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="gnuradio-runtime/include/gnuradio/rpcregisterhelpers.h" line="1059" column="10" bodyfile="gnuradio-runtime/include/gnuradio/rpcregisterhelpers.h" bodystart="1059" bodyend="1059"/>
      </memberdef>
      <memberdef kind="function" id="structrpcbasic__register__trigger_1a895792c3924627295fca7ea1dbbd0e82" prot="public" static="no" const="no" explicit="no" inline="yes" virt="non-virtual">
        <type>void</type>
        <definition>void rpcbasic_register_trigger&lt; T &gt;::privilege_level</definition>
        <argsstring>(priv_lvl_t p)</argsstring>
        <name>privilege_level</name>
        <qualifiedname>rpcbasic_register_trigger::privilege_level</qualifiedname>
        <param>
          <type><ref refid="rpccallbackregister__base_8h_1a49bbe5b25d6264b2ebfc1ffd260cb096" kindref="member">priv_lvl_t</ref></type>
          <declname>p</declname>
        </param>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="gnuradio-runtime/include/gnuradio/rpcregisterhelpers.h" line="1060" column="10" bodyfile="gnuradio-runtime/include/gnuradio/rpcregisterhelpers.h" bodystart="1060" bodyend="1060"/>
      </memberdef>
    </sectiondef>
    <briefdescription>
<para>Registers a &apos;trigger&apos; function to trigger an action over ControlPort. </para>
    </briefdescription>
    <detaileddescription>
<para>This class allows us to set up triggered events or function calls over ControlPort. When used from a ControlPort client, the <computeroutput>function</computeroutput> established here will be activated. Generally, this is meant to enable some kind of trigger or action that a block or object will perform, such as a reset, start, stop, etc.</para>
<para>Simpler than the <ref refid="structrpcbasic__register__set" kindref="compound">rpcbasic_register_set</ref> class, the constructor here only takes a few parameters, mostly because there is not actual variable associated with these function calls. It takes in the information to set up the pointer to the object that has the <computeroutput>function</computeroutput>, a ControlPort name (<computeroutput>functionbase</computeroutput>) for the triggered action, a description (<computeroutput>desc_</computeroutput>), and a privilege level (<computeroutput>minpriv_</computeroutput>). </para>
    </detaileddescription>
    <inheritancegraph>
      <node id="2">
        <label>rpcbasic_base</label>
        <link refid="classrpcbasic__base"/>
      </node>
      <node id="1">
        <label>rpcbasic_register_trigger&lt; T &gt;</label>
        <link refid="structrpcbasic__register__trigger"/>
        <childnode refid="2" relation="public-inheritance">
        </childnode>
      </node>
    </inheritancegraph>
    <collaborationgraph>
      <node id="2">
        <label>rpcbasic_base</label>
        <link refid="classrpcbasic__base"/>
      </node>
      <node id="1">
        <label>rpcbasic_register_trigger&lt; T &gt;</label>
        <link refid="structrpcbasic__register__trigger"/>
        <childnode refid="2" relation="public-inheritance">
        </childnode>
      </node>
    </collaborationgraph>
    <location file="gnuradio-runtime/include/gnuradio/rpcregisterhelpers.h" line="962" column="1" bodyfile="gnuradio-runtime/include/gnuradio/rpcregisterhelpers.h" bodystart="962" bodyend="1067"/>
    <listofallmembers>
      <member refid="structrpcbasic__register__trigger_1ae77f18abbb182322080568054576683f" prot="private" virt="non-virtual"><scope>rpcbasic_register_trigger</scope><name>d_desc</name></member>
      <member refid="structrpcbasic__register__trigger_1a934edfad9a76e59ef1e1b4ea457db59b" prot="private" virt="non-virtual"><scope>rpcbasic_register_trigger</scope><name>d_id</name></member>
      <member refid="structrpcbasic__register__trigger_1a83bae0bc61f2673278e95381eea55e60" prot="private" virt="non-virtual"><scope>rpcbasic_register_trigger</scope><name>d_minpriv</name></member>
      <member refid="structrpcbasic__register__trigger_1aa5306026bde3ca423d78918ef31d9051" prot="private" virt="non-virtual"><scope>rpcbasic_register_trigger</scope><name>d_object</name></member>
      <member refid="structrpcbasic__register__trigger_1a60dd38850f432cacc56d3fc346ab81ec" prot="public" virt="non-virtual"><scope>rpcbasic_register_trigger</scope><name>description</name></member>
      <member refid="structrpcbasic__register__trigger_1a1d18e5b4627aabc3ca3d1da66a768304" prot="public" virt="non-virtual"><scope>rpcbasic_register_trigger</scope><name>description</name></member>
      <member refid="structrpcbasic__register__trigger_1a663c35cc3952b70f363d529c98dbfe6f" prot="public" virt="non-virtual"><scope>rpcbasic_register_trigger</scope><name>privilege_level</name></member>
      <member refid="structrpcbasic__register__trigger_1a895792c3924627295fca7ea1dbbd0e82" prot="public" virt="non-virtual"><scope>rpcbasic_register_trigger</scope><name>privilege_level</name></member>
      <member refid="classrpcbasic__base_1ab0f3d0bf323958aa51750ccea26cefdb" prot="public" virt="non-virtual"><scope>rpcbasic_register_trigger</scope><name>rpcbasic_base</name></member>
      <member refid="structrpcbasic__register__trigger_1af0b1d8ee78a476cfe521a90a7042a2f4" prot="public" virt="non-virtual"><scope>rpcbasic_register_trigger</scope><name>rpcbasic_register_trigger</name></member>
      <member refid="structrpcbasic__register__trigger_1a9e0289b6dced5cefc560708771920626" prot="public" virt="non-virtual"><scope>rpcbasic_register_trigger</scope><name>rpcbasic_register_trigger</name></member>
      <member refid="classrpcbasic__base_1ae3f50018ff739652e1a5420acc1503c3" prot="public" virt="virtual"><scope>rpcbasic_register_trigger</scope><name>~rpcbasic_base</name></member>
      <member refid="structrpcbasic__register__trigger_1ace474a763e4408737104e9645ea142e7" prot="public" virt="non-virtual"><scope>rpcbasic_register_trigger</scope><name>~rpcbasic_register_trigger</name></member>
    </listofallmembers>
  </compounddef>
</doxygen>
