diff options
author | fengzhe29888 <fengzhe29888@gmali.com> | 2015-01-21 17:33:56 -0500 |
---|---|---|
committer | fengzhe29888 <fengzhe29888@gmali.com> | 2015-01-21 17:33:56 -0500 |
commit | 0832b5bd7cfe583bda929d950955d7c918c48cf0 (patch) | |
tree | f935830071a3bb6fddcca7cc3c14c21bbdeee6b9 | |
parent | d11233f6cfb1f7c32bc1187a97b16e17806efc23 (diff) |
updated the decison maker of 16QAM
-rw-r--r-- | gr-digital/lib/constellation.cc | 32 |
1 files changed, 16 insertions, 16 deletions
diff --git a/gr-digital/lib/constellation.cc b/gr-digital/lib/constellation.cc index f8ea72da04..9bb747546b 100644 --- a/gr-digital/lib/constellation.cc +++ b/gr-digital/lib/constellation.cc @@ -947,37 +947,37 @@ namespace gr { float re = sample->real(); float im = sample->imag(); - if(im < 0 && im > -2*level && re > 0 && re < 2*level) + if(im <= 0 && im >= -2*level && re >= 0 && re <= 2*level) ret = 0; - if(im < 0 && im > -2*level && re < 0 && re > -2*level) + else if(im <= 0 && im >= -2*level && re <= 0 && re >= -2*level) ret = 1; - if(im < -2*level && re > 2*level) + else if(im <= -2*level && re >= 2*level) ret = 2; - if(im < -2*level && re < -2*level) + else if(im <= -2*level && re <= -2*level) ret = 3; - if(im < 0 && im > -2*level && re < -2*level) + else if(im <= 0 && im >= -2*level && re <= -2*level) ret = 4; - if(im < 0 && im > -2*level && re > 2*level) + else if(im <= 0 && im >= -2*level && re >= 2*level) ret = 5; - if(im < -2*level && re < 0 && re > -2*level) + else if(im <= -2*level && re <= 0 && re >= -2*level) ret = 6; - if(im < -2*level && re > 0 && re < 2*level) + else if(im <= -2*level && re >= 0 && re <= 2*level) ret = 7; - if(im > 2*level && re < -2*level) + else if(im >= 2*level && re <= -2*level) ret = 8; - if(im > 2*level && re > 2*level) + else if(im >= 2*level && re >= 2*level) ret = 9; - if(im > 0 && im < 2*level && re < 0 && re < -2*level) + else if(im >= 0 && im <= 2*level && re <= 0 && re <= -2*level) ret = 10; - if(im > 0 && im < 2*level && re > 0 && re < 2*level) + else if(im >= 0 && im <= 2*level && re >= 0 && re <= 2*level) ret = 11; - if(im > 2*level && re > 0 && re < 2*level) + else if(im >= 2*level && re >= 0 && re <= 2*level) ret = 12; - if(im > 2*level && re < 0 && re > -2*level) + else if(im >= 2*level && re <= 0 && re >= -2*level) ret = 13; - if(im > 0 && im < 2*level && re > 2*level) + else if(im >= 0 && im <= 2*level && re >= 2*level) ret = 14; - if(im > 0 && im < 2*level && re < -2*level) + else if(im >= 0 && im <= 2*level && re <= -2*level) ret = 15; return ret; |