<?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.
-->

<!--
###################################################
##DPSK2 Mod - 2, 4
###################################################
 -->
<block>
	<name>DPSK Demod</name>
	<key>digital_dxpsk_demod</key>
  	<category>[Core]/Deprecated</category>
	<import>from gnuradio import digital</import>
	<make>digital.$(type)_demod(
	samples_per_symbol=$samples_per_symbol,
	excess_bw=$excess_bw,
	freq_bw=$freq_bw,
	phase_bw=$phase_bw,
	timing_bw=$timing_bw,
	mod_code=$mod_code,
	verbose=$verbose,
	log=$log
)</make>
	<callback>clock_recov.set_loop_bandwidth($phase_bw)</callback>
	<callback>time_recov.set_loop_bandwidth($timing_bw)</callback>
	<param>
		<name>Type</name>
		<key>type</key>
		<type>enum</type>
		<option>
			<name>DBPSK</name>
			<key>dbpsk</key>
		</option>
		<option>
			<name>DQPSK</name>
			<key>dqpsk</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>FLL Bandwidth</name>
		<key>freq_bw</key>
		<value>6.28/100.0</value>
		<type>real</type>
	</param>
	<param>
		<name>Phase Loop Bandwidth</name>
		<key>phase_bw</key>
		<value>6.28/100.0</value>
		<type>real</type>
	</param>
	<param>
		<name>Timing Bandwidth</name>
		<key>timing_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>Log</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>
	<param>
		<name>Sync Out</name>
		<key>sync_out</key>
		<value>False</value>
		<type>bool</type>
		<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>
