[Bio] / Sprout / Sprout.pm Repository:
ViewVC logotype

Diff of /Sprout/Sprout.pm

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.25, Sun Sep 11 17:29:52 2005 UTC revision 1.29, Wed Sep 14 13:06:53 2005 UTC
# Line 769  Line 769 
769              $start = $beg;              $start = $beg;
770              $stop = $beg + $len - 1;              $stop = $beg + $len - 1;
771          } else {          } else {
772              $start = $beg + $len + 1;              $start = $beg - $len + 1;
773              $stop = $beg;              $stop = $beg;
774          }          }
775            Trace("Looking for sequences containing $start through $stop.") if T(SDNA => 4);
776          my $query = $self->Get(['IsMadeUpOf','Sequence'],          my $query = $self->Get(['IsMadeUpOf','Sequence'],
777              "IsMadeUpOf(from-link) = ? AND IsMadeUpOf(start-position) + IsMadeUpOf(len) > ? AND " .              "IsMadeUpOf(from-link) = ? AND IsMadeUpOf(start-position) + IsMadeUpOf(len) > ? AND " .
778              " IsMadeUpOf(start-position) <= ? ORDER BY IsMadeUpOf(start-position)",              " IsMadeUpOf(start-position) <= ? ORDER BY IsMadeUpOf(start-position)",
# Line 783  Line 784 
784                  $sequence->Values(['IsMadeUpOf(start-position)', 'Sequence(sequence)',                  $sequence->Values(['IsMadeUpOf(start-position)', 'Sequence(sequence)',
785                                     'IsMadeUpOf(len)']);                                     'IsMadeUpOf(len)']);
786              my $stopPosition = $startPosition + $sequenceLength;              my $stopPosition = $startPosition + $sequenceLength;
787                Trace("Sequence is from $startPosition to $stopPosition.") if T(SDNA => 4);
788              # Figure out the start point and length of the relevant section.              # Figure out the start point and length of the relevant section.
789              my $pos1 = ($start < $startPosition ? 0 : $start - $startPosition);              my $pos1 = ($start < $startPosition ? 0 : $start - $startPosition);
790              my $len = ($stopPosition <= $stop ? $stopPosition : $stop) - $startPosition - $pos1;              my $len1 = ($stopPosition <= $stop ? $stopPosition : $stop) - $startPosition - $pos1;
791                Trace("Position is $pos1 for length $len1.") if T(SDNA => 4);
792              # Add the relevant data to the location data.              # Add the relevant data to the location data.
793              $locationDNA .= substr($sequenceData, $pos1, $len);              $locationDNA .= substr($sequenceData, $pos1, $len1);
794          }          }
795          # Add this location's data to the return string. Note that we may need to reverse it.          # Add this location's data to the return string. Note that we may need to reverse it.
796          if ($dir eq '+') {          if ($dir eq '+') {
797              $retVal .= $locationDNA;              $retVal .= $locationDNA;
798          } else {          } else {
799              $locationDNA = join('', reverse split //, $locationDNA);              $retVal .= FIG::reverse_comp($locationDNA);
             $retVal .= $locationDNA;  
800          }          }
801      }      }
802      # Return the result.      # Return the result.
# Line 2048  Line 2050 
2050      # Get the parameters.      # Get the parameters.
2051      my ($self, $entityName, $entityID) = @_;      my ($self, $entityName, $entityID) = @_;
2052      # Check for the entity instance.      # Check for the entity instance.
2053        Trace("Checking existence of $entityName with ID=$entityID.") if T(4);
2054      my $testInstance = $self->GetEntity($entityName, $entityID);      my $testInstance = $self->GetEntity($entityName, $entityID);
2055      # Return an existence indicator.      # Return an existence indicator.
2056      my $retVal = ($testInstance ? 1 : 0);      my $retVal = ($testInstance ? 1 : 0);

Legend:
Removed from v.1.25  
changed lines
  Added in v.1.29

MCS Webmaster
ViewVC Help
Powered by ViewVC 1.0.3