public static ModelCopyContext ForConstructing(DistillationContext context) { return new ModelCopyContext(context); }
//-------------------------------------------------------------------------- // Construction public ConcatenatedSequence(DistillationContext context) : base(context) { }
//--------------------------------------------------------------------------------------- // Construction //--------------------------------------------------------------------------------------- ModelCopyContext(DistillationContext context) { this.DistillationContext = context; }
public static INucleotideSequence Create(DistillationContext context, SymbolTable symtab, INucleotideSequence target) { return new ComplementedSequence(context, symtab, target); }
//-------------------------------------------------------------------------- // Construction public ExtractedSequence(DistillationContext context, SymbolTable symtab, INucleotideSequence target, int intFirst, int cnt) : base(context, symtab, target) { this.id = EnumeratedNucleotideSequence.NewId(); // StringExtractor.Confine(0, target.Length, ref intFirst, ref cnt); // note, though: target's length can change this.stringExtractor = new StringExtractor(intFirst, cnt); // this.isOurDecoration = dec => { if (dec.Ich >= this.stringExtractor.IchFirst && dec.Ich < this.stringExtractor.IchMax) return true; if (this.stringExtractor.IchFirst == 0 && dec.Ich < 0) return true; if (this.stringExtractor.IchMax >= this.target.Length && dec.Ich == this.target.Length) return true; return false; }; }
public static INucleotideSequence Create(IReverseSequenceIdContainer idmgr, DistillationContext context, SymbolTable symtab, INucleotideSequence target) { return new ReversedSequence(idmgr, context, symtab, target); }
//-------------------------------------------------------------------------- // Construction ComplementedSequence(DistillationContext context, SymbolTable symtab, INucleotideSequence target) : base(context, symtab, target) { }
//-------------------------------------------------------------------------- // Construction ReversedSequence(IReverseSequenceIdContainer idmgr, DistillationContext context, SymbolTable symtab, INucleotideSequence target) : base(context, symtab, target) { this.id = idmgr.IdForReversedTarget(target.Id); }
//-------------------------------------------------------------------------- // Construction public ComputedSequence(DistillationContext context, SymbolTable symtab, INucleotideSequence target) : base(context, symtab) { this.target = target; }
//-------------------------------------------------------------------------- // Construction public EnumeratedNucleotideSequence(DistillationContext context, SymbolTable symtab) : base(context, symtab) { this.id = NewId(); }
//------------------------------------------------------------------ // Construction protected SequenceBase(DistillationContext context) { this.context = context; }
// ------------------------------------------------------------------ // Construction protected DomainSequenceBase(DistillationContext context, SymbolTable symtab) : base(context) { this.symtab = symtab; this.properties = new PropertyBag(); // ALWAYS unique to this sequence instance }