From d54c272c59cbef1031a6e1f3a63c64d877b91dfd Mon Sep 17 00:00:00 2001
From: tjc <tjc@ee4ac58c-ac51-4696-9907-e4b3aa274f04>
Date: Thu, 12 May 2011 10:26:58 +0000
Subject: [PATCH] use filter when calculating overview

git-svn-id: svn+ssh://svn.internal.sanger.ac.uk/repos/svn/pathsoft/artemis/trunk@16075 ee4ac58c-ac51-4696-9907-e4b3aa274f04
---
 uk/ac/sanger/artemis/components/variant/IOUtils.java | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/uk/ac/sanger/artemis/components/variant/IOUtils.java b/uk/ac/sanger/artemis/components/variant/IOUtils.java
index d88ff3093..f7f1d45e7 100644
--- a/uk/ac/sanger/artemis/components/variant/IOUtils.java
+++ b/uk/ac/sanger/artemis/components/variant/IOUtils.java
@@ -684,7 +684,7 @@ class IOUtils
               
                 VCFRecord record;
                 while ((record = reader.getNextRecord(vcfView.getChr(), thisStart, thisEnd)) != null)
-                  count(record, count, features, reader);
+                  count(record, count, features, reader, vcfView);
               }
             }
           }
@@ -692,7 +692,7 @@ class IOUtils
           {
             VCFRecord record;
             while ((record = reader.getNextRecord(vcfView.getChr(), sbeg, send)) != null)
-              count(record, count, features, reader);
+              count(record, count, features, reader, vcfView);
           }
         }
 
@@ -711,8 +711,12 @@ class IOUtils
       tab.setIntegerRowSorter(i);
   }
   
-  private static void count(VCFRecord record, int count[], FeatureVector features, AbstractVCFReader reader)
+  private static void count(VCFRecord record, int count[], FeatureVector features, AbstractVCFReader reader, VCFview vcfView)
   {
+    int basePosition = record.getPos() + vcfView.getSequenceOffset(record.getChrom());
+    if(!vcfView.showVariant(record, features, basePosition, reader.isVcf_v4()) )
+      return;
+    
     if(record.getAlt().isNonVariant())
     {
       count[1]++;
-- 
GitLab