/// <summary> /// Initializes a new instance of the ParallelDeNovoAssembler class. /// Sets thresholds to default values. /// Also initializes instances implementing different steps /// </summary> public ParallelDeNovoAssembler() { // Initialize to default here. // Values set to -1 here will be reset based on input sequences. _kmerLength = -1; _dangleThreshold = -1; _redundantPathLengthThreshold = -1; _sequenceReads = new List <ISequence>(); // Contig and scaffold Builder are required modules. Set this to default. _contigBuilder = new SimplePathContigBuilder(); // Default values for parameters used in building scaffolds. ScaffoldRedundancy = 2; Depth = 10; AllowKmerLengthEstimation = true; }
/// <summary> /// Dispose field instances. /// </summary> /// <param name="disposeManaged">If disposeManaged equals true, clean all resources.</param> protected virtual void Dispose(bool disposeManaged) { if (disposeManaged) { if (this.scaffoldBuilder != null) { this.scaffoldBuilder.Dispose(); } this.graph = null; this.sequenceReads = null; this.danglingLinksPurger = null; this.redundantPathsPurger = null; this.contigBuilder = null; this.scaffoldBuilder = null; } }
/// <summary> /// Dispose field instances /// </summary> /// <param name="disposeManaged">If disposeManaged equals true, clean all resources</param> protected virtual void Dispose(bool disposeManaged) { if (disposeManaged) { if (_graph != null) { _graph.Dispose(); } if (_scaffoldBuilder != null) { _scaffoldBuilder.Dispose(); } _graph = null; _sequenceReads = null; _danglingLinksPurger = null; _redundantPathsPurger = null; _contigBuilder = null; _scaffoldBuilder = null; } }