| 
    Isis 3.0 Programmer Reference
    
   | Home | 
Execute External Programs and Commands. More...
#include <ProgramLauncher.h>

Static Public Member Functions | |
| static void | RunIsisProgram (QString isisProgramName, QString arguments) | 
| Executes the Isis program with the given arguments.  More... | |
| static void | RunSystemCommand (QString commandLine) | 
| This runs arbitrary system commands.  More... | |
Private Member Functions | |
| ProgramLauncher () | |
| Construction is not allowed.  More... | |
| ~ProgramLauncher () | |
| Destruction is not allowed.  More... | |
| ProgramLauncher (ProgramLauncher &other) | |
| Copy construction is not allowed.  More... | |
| ProgramLauncher & | operator= (ProgramLauncher &other) | 
| Assignment is not allowed.  More... | |
Static Private Member Functions | |
| static IException | ProcessIsisMessageFromChild (QString code, QString msg) | 
| This interprets a message sent along the pipe from a child process to us (the parent).  More... | |
Execute External Programs and Commands.
This class is designed to handle running any other programs or commands.
2010-12-03 Steven Lambright - Original version
2011-08-19 Jeannie Backer - Modified unitTest to use $temporary variable instead of /tmp directory.
2011-08-19 Kelvin Rodriguez - Added truth data for OS X 10.11 Part of proting to 10.11.
Definition at line 47 of file ProgramLauncher.h.
      
  | 
  private | 
Construction is not allowed.
      
  | 
  private | 
Destruction is not allowed.
      
  | 
  private | 
Copy construction is not allowed.
| other | 
      
  | 
  private | 
Assignment is not allowed.
| other | 
      
  | 
  staticprivate | 
This interprets a message sent along the pipe from a child process to us (the parent).
| code | The text code of the message - this is used to determine what the message contains. | 
| msg | The data sent along with a code. This is a string, number, PvlGroup, Pvl, etc... really anything. It depends on the code parameter. | 
Definition at line 165 of file ProgramLauncher.cpp.
References Isis::IException::append(), Isis::Application::GuiLog(), Isis::Application::Log(), Isis::toInt(), and Isis::Application::UpdateProgress().
      
  | 
  static | 
Executes the Isis program with the given arguments.
This will handle logs, GUI updates, and similar tasks. Please use this even when there is no instance of Isis::Application, so long as the thing you are running has an Isis::Application (do not use this for qview, qnet, qtie, etc for now).
Please do not specify -pid.
| programName | The Isis program name to be run (i.e. catlab, cubeatt) | 
| parameters | The arguments to give to the program that is being run | 
Definition at line 53 of file ProgramLauncher.cpp.
References _FILEINFO_, Isis::IException::append(), and Isis::toString().
Referenced by Isis::Pipeline::Run().
      
  | 
  static | 
This runs arbitrary system commands.
You can run programs like "qview" with this, or commands like "ls | grep *.cpp > out.txt". Please do not use this for Isis programs not in qisis.
Example: qview should use RunIsisProgram to run camstats. camstats should use RunSystemCommand to run qview.
| fullCommand | A string containing the command formatted like what you would type in a terminal | 
Definition at line 223 of file ProgramLauncher.cpp.
References _FILEINFO_, and Isis::toString().
Referenced by Isis::UserInterface::evaluateOption(), Isis::ControlPointEdit::saveChips(), Isis::ControlMeasureEditWidget::saveChips(), and Isis::GuiCubeParameter::ViewCube().