public static void PerformLocalBlast(string querypath, string ncbipath, string localpath, string outputpath,
            RunCommand command, BlastType blastType, List<FastaObj> fastaSet, string fastaSetPath, bool inclWaitTime)
        {
            var lb = new LocalBlaster(ncbipath, localpath, outputpath);

            lb.CreateLocalBlastDatabase(command, blastType, fastaSet, fastaSetPath, inclWaitTime);

            lb.PerformBlast(querypath, inclWaitTime);

            //var bo = Program.localBlaster.PerformBlast(queryPath, true);
        }
    public void Blast(BlastType b_type)
    {
        Ray        ray = Camera.main.ViewportPointToRay(new Vector3(.5f, .5f, 0));
        RaycastHit hit;

        if (Physics.Raycast(ray, out hit, 5f, layerMask))
        {
            EnemyController eController = hit.collider.GetComponent <EnemyController> ();
            if (eController != null)
            {
                eController.Death(b_type);
            }
        }
    }
        public void CreateLocalBlastDatabase(RunCommand command, BlastType blastType, List<FastaObj> fastaSet, string fastaSetPath, bool includeWaitTime)
        {
            this._blastType = blastType;
            this._fastaSetPath = fastaSetPath;

            if (this._blastType == BlastType.Null)
                return;

            this.command = command;

            //Name for local db
            if (this._localDBPath.EndsWith(@"\"))
                this._localDBPath += @"\";
            var outFilePath = this._localDBPath + @"\~tempLocalBlastDB";

            //Check for part of db, if exists, remove to force new db creation
            if (File.Exists(outFilePath + ".pin"))
                File.Delete(outFilePath + ".pin");

            var btype = DBCommands[(int)blastType];

            if (fastaSet != null)
            {
                this._fastaDBSet = fastaSet;
                File.Delete(fastaSetPath);
                FastaObj.CreateMultiFastaFile(fastaSetPath, fastaSet);
            }

            var cs = @"makeblastdb -in " + fastaSetPath + " -dbtype " + btype + " -out " + outFilePath;

            if (!File.Exists(fastaSetPath))
                return;

            //Create new Database through c# command line simulator/wrapper. Wait for completion
            command.RunCommandLine(cs, this._NCBIBlasteEXEPath);

            if (includeWaitTime)
                while (command.isRunning)
                { }
        }