HDLToolkit.Xilinx.Simulation.ISimProcess.InjectCommand C# (CSharp) Method

InjectCommand() public method

public InjectCommand ( string command ) : string
command string
return string
        public string InjectCommand(string command)
        {
            if (CurrentProcess == null || CurrentProcess.HasExited)
            {
                throw new Exception("Process is not running");
            }

            WaitForPrompt();
            InjectCommandNoWait(command);
            InjectCommandNoWait(DefaultSyncCommand);
            WaitForPrompt();

            //Logger.Instance.WriteDebug("isim: command = '{0}'", command);

            lock (outputLock)
            {
                if (commandLog != null)
                {
                    string result = commandLog.ToString();
                    commandLog = new StringBuilder();
                    return result;
                }
            }
            return "";
        }

Usage Example

Ejemplo n.º 1
0
        public void Start()
        {
            if (running)
            {
                throw new Exception("Stop the instance before starting");
            }

            // System is now running
            running = true;

            BuildSimulation();

            // Execute the ISim Process
            Logger.Instance.WriteVerbose("Starting ISim Process at '{0}'", currentResult.ExecutableFile);
            isimProcess = new ISimProcess(currentWorkingDirectory, currentResult.ExecutableFile);
            isimProcess.RunGraphicalUserInterface = UseGraphicalUserInterface;
            isimProcess.Start();

            // Current example process
            while (isimProcess.Running)
            {
                // If using gui, dont run console prompt mode
                if (!UseGraphicalUserInterface)
                {
                    isimProcess.WaitForPrompt();

                    Console.Write("$ ");
                    string command = Console.ReadLine();
                    Console.WriteLine(isimProcess.InjectCommand(command));
                }
                else
                {
                    Thread.Sleep(1000);
                }
            }

            Logger.Instance.WriteVerbose("ISim terminated");
        }
All Usage Examples Of HDLToolkit.Xilinx.Simulation.ISimProcess::InjectCommand