/// <summary>
        /// Key method in the display class, makes a decision on what to output based on the previous active task from the generic
        /// inputs transport class.  Also accepts instance of the richtextbox which will display the output.
        /// </summary>
        /// <param name="input">Instance of the transport class.  Used in this instance to inform the display class of previous activity</param>
        /// <param name="textBox">The rich text box that will display the outputs</param>
        public void Update(GenericFastqInputs input, RichTextBox textBox)
        {
            this.fqMap = FastqController.getInstance().GetFqFileMap();
            this.textBox = textBox;

            if (input.TaskAction == Task_FindSequences.statement)
                AddFoundSequenceData();
            else
            {
                ClearText();
                DisplayFileDetails();
                DisplayFastqFileDetails();
                DisplayComponentDetais();
            }
        }
 /// <summary>
 /// Creates the basis for loading a new fastq file into the program.
 /// </summary>
 /// <param name="fileName">Name of the file</param>
 /// <param name="fileLength">Length of the file</param>
 /// <returns></returns>
 public FqFileMap CreateNewFastqFile(String fileName, long fileLength)
 {
     fqFileMap = new FqFileMap();
     fqFileMap.FileName = fileName;
     fqFileMap.FileLength = fileLength;
     return fqFileMap;
 }
 /// <summary>
 /// Resets the state of a controller for loading a new file
 /// </summary>
 public void PrimeForNewFile()
 {
     fqFileMap = null;
     if (FlushMemoryOfProtobinFiles() == true)
         UserResponse.InformationResponse("Protobin directory cleaned.");
 }
 /// <summary>
 /// Method to be used in the event of the failure of the PerformAction method experiencing some exception.
 /// Method warns user and flushes memory of fqprotobin files before returning program to initial state.
 /// </summary>
 /// <param name="mainMessage">Main message to send to user</param>
 /// <param name="headerMessage">Header message to send to user</param>
 public void ControllerStateFailureResponse(String mainMessage, String headerMessage)
 {
     UserResponse.ErrorResponse(mainMessage, headerMessage);
     Console.WriteLine("Program Error. Exception Caught: {0}", mainMessage);
     FlushMemoryOfProtobinFiles();
     fqFileMap = null;
     CONTROLLER_STATE = FastqControllerState.STATE_READY;
 }