<?xml version="1.0"?>

<!--
 Copyright 2009,2010,2011 Free Software Foundation, Inc.
 
 This file is part of GNU Radio
 
 GNU Radio is free software; you can redistribute it and/or modify
 it under the terms of the GNU General Public License as published by
 the Free Software Foundation; either version 3, or (at your option)
 any later version.
 
 GNU Radio is distributed in the hope that it will be useful,
 but WITHOUT ANY WARRANTY; without even the implied warranty of
 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License
 along with GNU Radio; see the file COPYING.  If not, write to
 the Free Software Foundation, Inc., 51 Franklin Street,
 Boston, MA 02110-1301, USA.
-->

<!--
###################################################
##QAM Demod
###################################################
 -->
<block>
  <name>QAM Demod</name>
  <key>digital_qam_demod</key>
  <import>from gnuradio import digital</import>
  <make>digital.qam.qam_demod(
  constellation_points=$constellation_points,
  differential=$differential,
  samples_per_symbol=$samples_per_symbol,
  excess_bw=$excess_bw,
  freq_bw=$freq_bw,
  timing_bw=$timing_bw,
  phase_bw=$phase_bw,
  mod_code=$mod_code,
  verbose=$verbose,
  log=$log,
  )</make>
  <param>
    <name>Number of Constellation Points</name>
    <key>constellation_points</key>
    <value>16</value>
    <type>int</type>
  </param>
  <param>
    <name>Differential Encoding</name>
    <key>differential</key>
    <value>True</value>
    <type>bool</type>
    <option>
      <name>Yes</name>
      <key>True</key>
    </option>
    <option>
      <name>No</name>
      <key>False</key>
    </option>
  </param>
  <param>
    <name>Samples/Symbol</name>
    <key>samples_per_symbol</key>
    <value>2</value>
    <type>int</type>
  </param>
  <param>
    <name>Excess BW</name>
    <key>excess_bw</key>
    <value>0.35</value>
    <type>real</type>
  </param>
  <param>
    <name>Frequency BW</name>
    <key>freq_bw</key>
    <value>6.28/100.0</value>
    <type>real</type>
  </param>
  <param>
    <name>Timing BW</name>
    <key>timing_bw</key>
    <value>6.28/100.0</value>
    <type>real</type>
  </param>
  <param>
    <name>Phase BW</name>
    <key>phase_bw</key>
    <value>6.28/100.0</value>
    <type>real</type>
  </param>
  <param>
    <name>Gray Code</name>
    <key>mod_code</key>
    <type>enum</type>
    <option>
      <name>Yes</name>
      <key>"gray"</key>
    </option>
    <option>
      <name>No</name>
      <key>"none"</key>
    </option>
  </param>
  <param>
    <name>Verbose</name>
    <key>verbose</key>
    <value>False</value>
    <type>bool</type>
    <hide>#if str($verbose) == 'False' then 'part' else 'none'#</hide>
    <option>
      <name>On</name>
      <key>True</key>
    </option>
    <option>
      <name>Off</name>
      <key>False</key>
    </option>
  </param>
  <param>
    <name>Logging</name>
    <key>log</key>
    <value>False</value>
    <type>bool</type>
    <hide>#if str($log) == 'False' then 'part' else 'none'#</hide>
    <option>
      <name>On</name>
      <key>True</key>
    </option>
    <option>
      <name>Off</name>
      <key>False</key>
    </option>
  </param>
  <sink>
    <name>in</name>
    <type>complex</type>
  </sink>
  <source>
    <name>out</name>
    <type>byte</type>
  </source>
</block>