/// <summary> /// Initializes a new instance of the VirtualQualitativeSequenceList class with a specified provider, /// a specified parser, and a specifed sequence count. /// </summary> /// <param name="provider">SequencePointer provider from sidecar file.</param> /// <param name="parser">Parser used to parse sequence data on request.</param> /// <param name="count">Number of items in the actual file.</param> public VirtualQualitativeSequenceList(SidecarFileProvider provider, IVirtualSequenceParser parser, int count) { _sequenceParser = parser; _sidecarProvider = provider; _count = count; _sequenceDictionary = new Dictionary <int, WeakReference>(_count); }
/// <summary> /// Initializes a new instance of MBF.IO.FileVirtualSequenceProvider /// class to hold a sequence parser, a sidecar file provider and /// the index of the sequence. /// </summary> /// <param name="parser">A virtual parser object.</param> /// <param name="pointer">The sequence pointer.</param> /// <param name="sidecarFileProvider">A sidecar file provider.</param> /// <param name="index">The zero-based index of the sequence within the file.</param> public FileVirtualSequenceProvider(IVirtualSequenceParser parser, SequencePointer pointer, SidecarFileProvider sidecarFileProvider, int index) : this(parser, pointer) { if (sidecarFileProvider == null) { throw new ArgumentNullException("sidecarFileProvider"); } _sidecarProvider = sidecarFileProvider; _sequenceIndex = index; }
/// <summary> /// Initializes a new instance of the MBF.IO.FileVirtualQualitativeSequenceProvider /// class to hold a sequence pointer with a parser. /// </summary> /// <param name="parser">A virtual parser object.</param> /// <param name="pointer">The sequence pointer.</param> public FileVirtualQualitativeSequenceProvider(IVirtualSequenceParser parser, SequencePointer pointer) { if (parser == null) { throw new ArgumentNullException("parser"); } if (pointer == null) { throw new ArgumentNullException("pointer"); } _parser = parser; _count = (int)(pointer.IndexOffsets[1] - pointer.IndexOffsets[0]); SequencePointerInstance = pointer; //set the default DV properties. _virtualData = new VirtualData <Sequence> { BlockSize = FileLoadHelper.DefaultBlockSize, MaxNumberOfBlocks = FileLoadHelper.DefaultMaxNumberOfBlocks }; }
/// <summary> /// Initializes a new instance of the MBF.IO.FileVirtualSequenceProvider /// class to hold a sequence pointer with a parser. /// </summary> /// <param name="parser">A virtual parser object.</param> /// <param name="pointer">The sequence pointer.</param> public FileVirtualSequenceProvider(IVirtualSequenceParser parser, SequencePointer pointer) { if (parser == null) { throw new ArgumentNullException("parser"); } if (pointer == null) { throw new ArgumentNullException("pointer"); } _parser = parser; _count = (int)(pointer.IndexOffsets[1] - pointer.IndexOffsets[0]); SequencePointerInstance = pointer; _alphabet = Alphabets.All.FirstOrDefault(A => A.Name.Equals(pointer.AlphabetName)); //set the default DV properties. _virtualData = new VirtualData <byte[]> { BlockSize = FileLoadHelper.DefaultBlockSize, MaxNumberOfBlocks = FileLoadHelper.DefaultMaxNumberOfBlocks }; }