예제 #1
0
 /// <summary>
 /// Creates a new instance of SmithWatermanImplementation
 /// </summary>
 /// <param name="sequenceTomatch">Sequence to match</param>
 /// <param name="targetSequence">Sequence to match against.</param>
 public SmithWatermanImplementation(
     SequenceMetadata sequenceTomatch,
     SequenceMetadata targetSequence,
     AlignmentScoreProviderBase scoreProvider,
     int gapOpenPenality) :
     base(sequenceTomatch, targetSequence, scoreProvider, gapOpenPenality)
 {
     this.IntializeSubstitutionMatrix();
 }
        /// <summary>
        /// Creates a new instance alignment algorithm.
        /// </summary>
        public AlignmentImplementationBase(
            SequenceMetadata sequenceTomatch,
            SequenceMetadata targetSequence,
            AlignmentScoreProviderBase scoreProvider, int gapOpenPenality)
        {
            if (sequenceTomatch == null)
            {
                throw new ArgumentNullException("sequenceTomatch");
            }
            if (targetSequence == null)
            {
                throw new ArgumentNullException("targetSequence");
            }
            if (scoreProvider == null)
            {
                throw new ArgumentNullException("scoreProvider");
            }

            this.TargetSequence  = targetSequence;
            this.SequenceToMatch = sequenceTomatch;
            this.ScoreProvider   = scoreProvider;
            this.GapOpenPenality = gapOpenPenality;
        }