Index: /branches/pap/ippScripts/scripts/ds9_cmf_regions.pl
===================================================================
--- /branches/pap/ippScripts/scripts/ds9_cmf_regions.pl	(revision 25904)
+++ /branches/pap/ippScripts/scripts/ds9_cmf_regions.pl	(revision 25905)
@@ -24,4 +24,5 @@
      $flag,                     # Flags
      $mag_radius,               # Magnitude scaling for radius?
+     $qf_min,                   # Quality factor minimum
      $radius,                   # Radius for circle
      $save_temps
@@ -39,16 +40,18 @@
          65536 # SKY_FAILURE
          );
+$qf_min = 0.7;
 
 GetOptions(
-           'file=s' => \$filename,
-           'ext=s' => \$extname,
-           'frame=s' => \$frame,
-           'colour=s' => \$colour,
-           'flag-colour=s' => \$flag_colour,
-           'flag=o' => \$flag,
+    'file=s' => \$filename,
+    'ext=s' => \$extname,
+    'frame=s' => \$frame,
+    'colour=s' => \$colour,
+    'flag-colour=s' => \$flag_colour,
+    'flag=o' => \$flag,
+    'qf-min=f', \$qf_min,
     'mag-radius' => \$mag_radius,
-           'radius=f' => \$radius,
-           'save-temps'        => \$save_temps, # Save temporary files?
-) or pod2usage( 2 );
+    'radius=f' => \$radius,
+    'save-temps'        => \$save_temps, # Save temporary files?
+    ) or pod2usage( 2 );
 
 pod2usage( -msg => "Unknown option: @ARGV", -exitval => 2 ) if @ARGV;
@@ -65,15 +68,17 @@
 $fits->get_num_rows($numRows, $status) and check_fitsio($status);
 
-my ($xCol, $yCol, $flagCol, $magCol); # Column numbers for x,y, flag, mag
+my ($xCol, $yCol, $flagCol, $magCol, $qfCol); # Column numbers for x,y, flag, mag, qf
 $fits->get_colnum(0, 'X_PSF', $xCol, $status) and check_fitsio($status);
 $fits->get_colnum(0, 'Y_PSF', $yCol, $status) and check_fitsio($status);
 $fits->get_colnum(0, 'FLAGS', $flagCol, $status) and check_fitsio($status);
 $fits->get_colnum(0, 'PSF_INST_MAG', $magCol, $status) and check_fitsio($status);
+$fits->get_colnum(0, 'PSF_QF', $qfCol, $status) and check_fitsio($status);
 
-my ($x, $y, $flags, $mag);     # Coordinates, flags, magnitude read from table
+my ($x, $y, $flags, $mag, $qf);     # Coordinates, flags, magnitude read from table
 $fits->read_col(TFLOAT, $xCol, 1, 1, $numRows, 0, $x, undef, $status) and check_fitsio($status);
 $fits->read_col(TFLOAT, $yCol, 1, 1, $numRows, 0, $y, undef, $status) and check_fitsio($status);
 $fits->read_col(TINT, $flagCol, 1, 1, $numRows, 0, $flags, undef, $status) and check_fitsio($status);
 $fits->read_col(TFLOAT, $magCol, 1, 1, $numRows, 0, $mag, undef, $status) and check_fitsio($status);
+$fits->read_col(TFLOAT, $qfCol, 1, 1, $numRows, 0, $qf, undef, $status) and check_fitsio($status);
 $fits->close_file($status);
 
@@ -92,5 +97,4 @@
 }
 
-
 my ($coordFile, $coordName) = tempfile( "/tmp/ds9_cmf_regions.XXXX", UNLINK => !$save_temps );
 my $numGood = 0;                # Number of good sources
@@ -99,5 +103,5 @@
 for (my $i = 0; $i < $numRows; $i++) {
     my $col;                    # Colour to use
-    if ($$flags[$i] & $flag) {
+    if (($$flags[$i] & $flag) or ($$qf[$i] < $qf_min)) {
         $numBad++;
         $col = $flag_colour;
