using System; using System.IO; namespace BCG { public class FileViewStream : ViewStream { DataPacket? myDp; public FileViewStream (string dataFileName, string schemaFileName) : this (dataFileName, schemaFileName, Int32.MaxValue) {} public FileViewStream (string dataFileName, string schemaFileName, int bufferSize) { IBlueRowCollection newRows = new FileRowCollection (dataFileName, schemaFileName, bufferSize); myFireEvent (new DataPacket (newRows, new BlueTable(newRows), new BlueTable (newRows.schema))); } public FileViewStream (StreamReader dataReader, StreamReader schemaReader) : this (dataReader, schemaReader, Int32.MaxValue) {} public FileViewStream (StreamReader dataReader, StreamReader schemaReader, int bufferSize) { IBlueRowCollection newRows = new FileRowCollection (dataReader, schemaReader, bufferSize); myDp = new DataPacket (newRows, new BlueTable(newRows), new BlueTable (newRows.schema)); } protected override void myOnFirstSubscriber() { if (myDp != null) myFireEvent (myDp); } } }