I have two out of tree blocks I want to add to GRC, everything compiles and
installs correctly except for the GRC component (not shown in GRC). So this
should be an XML issue and I think it is related to my attempts at making a
drop down option choice concerning the detection of white space/closed
frequencies and verbose output. My XML is attached below and you can see
that under Params Desired Detection and Verbose have options.

When I look at other stock GNU Radio block's XML like the low pass filter,
I see that some params have opt tags. Do I need these also, if so how would
I use them in my case?

Thanks,

Jon
<?xml version="1.0"?>
<block>
  <name>Energy Detector</name>
  <key>specsense_energy_detector_ff</key>
  <category>specsense</category>
  <import>import specsense</import>
  <make>specsense.energy_detector_ff($vlen, $eta, $white_space, $samp_rate, $cntr_freq, $verbose)</make>
  <!-- Make one 'param' node for every Parameter you want settable from the GUI.
       Sub-nodes:
       * name
       * key (makes the value accessible as $keyname, e.g. in the make node)
       * type -->
  <callback>set_eta($eta)</callback>
  <param>
    <name>FFT Size</name>
    <key>vlen</key>
    <value>1</value>
    <type>int</type>
  </param>

  <param>
    <name>Threshold</name>
    <key>eta</key>
    <value>0</value>
    <type>float</type>
  </param>

  <param>
    <name>Sample Rate</name>
    <key>samp_rate</key>
    <value>1</value>
    <type>float</type>
  </param>

  <param>
    <name>Center Frequency</name>
    <key>cntr_freq</key>
    <value>0</value>
    <type>float</type>
  </param>

  <param>
    <name>Desired Detection</name>
    <key>white_space</key>
    <type>bool</type>
    <option>
      <name>Open Band</name>
      <value>True</value>
    </option>
    <option>
      <name>Closed Band</name>
      <value>False</value>
    </option>
  </param>

  <param>
    <name>Verbose</name>
    <key>verbose</key>
    <type>bool</type>
    <option>
      <name>Yes</name>
      <value>True</value>
    </option>
    <option>
      <name>No</name>
      <value>False</value>
    </option>
  </param>

  <!-- Make one 'sink' node per input. Sub-nodes:
       * name (an identifier for the GUI)
       * type
       * vlen
       * optional (set to 1 for optional inputs) -->
  <sink>
    <name>in</name>
    <type>float</type>
    <vlen>$vlen</vlen>
  </sink>

  <!-- Make one 'source' node per output. Sub-nodes:
       * name (an identifier for the GUI)
       * type
       * vlen
       * optional (set to 1 for optional inputs) -->
  <source>
    <name>out</name>
    <type>float</type>
  </source>
</block>
<?xml version="1.0"?>
<block>
  <name>Energy Detector Sink</name>
  <key>specsense_energy_detector_sink_f</key>
  <category>specsense</category>
  <import>import specsense</import>
  <make>specsense.energy_detector_sink_f($vlen, $eta, $white_space, $samp_rate, $cntr_freq, $verbose)</make>
  <!-- Make one 'param' node for every Parameter you want settable from the GUI.
       Sub-nodes:
       * name
       * key (makes the value accessible as $keyname, e.g. in the make node)
       * type -->
  <callback>set_eta($eta)</callback>
  <param>
    <name>FFT Size</name>
    <key>vlen</key>
    <value>1</value>
    <type>int</type>
  </param>

  <param>
    <name>Threshold</name>
    <key>eta</key>
    <value>0</value>
    <type>float</type>
  </param>

  <param>
    <name>Sample Rate</name>
    <key>samp_rate</key>
    <value>1</value>
    <type>float</type>
  </param>

  <param>
    <name>Center Frequency</name>
    <key>cntr_freq</key>
    <value>0</value>
    <type>float</type>
  </param>

  <param>
    <name>Desired Detection</name>
    <key>white_space</key>
    <type>bool</type>
    <option>
      <name>Open Band</name>
      <value>True</value>
    </option>
    <option>
      <name>Closed Band</name>
      <value>False</value>
    </option>
  </param>

  <param>
    <name>Verbose</name>
    <key>verbose</key>
    <type>bool</type>
    <option>
      <name>Yes</name>
      <value>True</value>
    </option>
    <option>
      <name>No</name>
      <value>False</value>
    </option>
  </param>

  <!-- Make one 'sink' node per input. Sub-nodes:
       * name (an identifier for the GUI)
       * type
       * vlen
       * optional (set to 1 for optional inputs) -->
  <sink>
    <name>in</name>
    <type>float</type>
    <vlen>$vlen</vlen>
  </sink>
  <!-- Make one 'source' node per output. Sub-nodes:
       * name (an identifier for the GUI)
       * type
       * vlen
       * optional (set to 1 for optional inputs) -->
  <source>
    <name>out</name>
    <type><!-- e.g. int, float, complex, byte, short, xxx_vector, ...--></type>
  </source>
</block>
_______________________________________________
Discuss-gnuradio mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio

Reply via email to