//for cloning
 public RegionStatistics(RegionStatistics regionStats)
 {
     AlignedBaseCount = regionStats.AlignedBaseCount;
     BaseCount = regionStats.BaseCount;
     Chromosome = regionStats.Chromosome;
     ClustersPF = regionStats.ClustersPF;
     ClustersRaw = regionStats.ClustersRaw;
     Coverage = regionStats.Coverage;
     CoverageByPosition = regionStats.CoverageByPosition;
     EndPosition = regionStats.EndPosition;
     ErrorCount = regionStats.ErrorCount;
     ErrorRate = regionStats.ErrorRate;
     Genome = regionStats.Genome;
     Manifest = regionStats.Manifest;
     NoCallCount = regionStats.NoCallCount;
     NoCallRate = regionStats.NoCallRate;
     ReadsBySample = regionStats.ReadsBySample;
     RegionName = regionStats.RegionName;
     StartPosition = regionStats.StartPosition;
     VariantInfo = regionStats.VariantInfo;
 }
 public AmpliconStatistics(Dictionary<int, int> cyclesByRead)
 {
     int numberOfReads = cyclesByRead.Keys.Count;
     ClustersRaw = new long[numberOfReads];
     ClustersPF = new long[numberOfReads];
     ErrorRate = new float[numberOfReads];
     NoCallRate = new float[numberOfReads];
     ErrorCount = new long[numberOfReads];
     AlignedBaseCount = new long[numberOfReads];
     NoCallCount = new long[numberOfReads];
     BaseCount = new long[numberOfReads];
     VariantInfo = new VariantsForSequence();
 }
        public RegionStatistics(Dictionary<int, int> cyclesByRead, string chromosome, string manifest, int genome,
                                string name, int start, int end)
        {
            Chromosome = chromosome;
            Manifest = manifest;
            StartPosition = start;
            EndPosition = end;
            RegionName = name;
            Genome = genome;

            int numberOfReads = cyclesByRead.Keys.Count;
            ClustersRaw = new long[numberOfReads];
            ClustersPF = new long[numberOfReads];
            ErrorRate = new float[numberOfReads];
            NoCallRate = new float[numberOfReads];
            ErrorCount = new long[numberOfReads];
            NoCallCount = new int[numberOfReads];
            AlignedBaseCount = new long[numberOfReads];
            BaseCount = new int[numberOfReads];
            CoverageByPosition = new int[EndPosition - StartPosition + 1];
            ReadsBySample = new Dictionary<string, int>();
            VariantInfo = new VariantsForSequence();
        }