11#include "Environment.h"
15#include <sys/socket.h>
21#include <QElapsedTimer>
26#include "UserInterface.h"
106 int Run(
void (*funct)());
114 static void GuiLog(
const QString &results);
115 static QString
Name();
117 static bool p_applicationForceGuiApp;
123 p_guiHelpers = helpers;
130 return p_guiHelpers[helper];
137 static QString
DateTime(time_t *curtime = 0);
148 QLocalSocket *p_connectionToParent;
150 clock_t p_startClock;
154 int p_startPageFaults;
155 int p_startProcessSwaps;
183 p_connectionToParent = p_connection;
185 void EstablishConnections();
186 void WaitForCommand(
int childSocket);
189 std::map<QString, void *> p_guiHelpers;
190 static QString p_appName;
194 extern Application *iApp;
int Run(void(*funct)())
Runs the program defined in the function funct.
static QString DateTime(time_t *curtime=0)
Returns the date and time as a QString.
PvlObject History()
Creates an application history PvlObject.
void FunctionCleanup()
Cleans up after the function by writing the log, saving the history, and either sending the log to th...
static void Log(PvlGroup &results)
Writes Pvl results to sessionlog and printfile.
PvlGroup Accounting()
Creates accounting PvlGroup.
void SendParentData(QString, const QString &)
static void GuiLog(const Pvl &results)
Writes the Pvl results to the sessionlog, but not to the printfile.
static QString HostName()
Returns the host name.
void GuiReportError(IException &e)
Loads the error message into the gui, but does not write it to the session log.
int DirectIO()
Returns the current number of I/O's.
QElapsedTimer m_connectTime
Used to calculate program's run time.
static QString Version()
The Isis Version for this application.
static QString Name()
Returns the name of the application.
void RegisterGuiHelpers(std::map< QString, void * > helpers)
int PageFaults()
Returns the current number of faults.
void ProcessGuiEvents()
Processes the gui events.
int ProcessSwaps()
Returns the current number of swaps.
static QString GetLibraryDependencies(QString file)
Runs ldd on linux and sun and otool on macs to get information about the applicaiton run.
static bool HasParent()
Returns whether the application has a parent or not.
static QString GetSystemDiskSpace()
Runs df to see the disk space availability.
void UpdateProgress(const QString &text, bool print)
Updates the progress bar in the gui.
void SendParentErrors(PvlObject &errors)
Sends errors to the parent.
UserInterface * p_ui
Pointer to a User Interface object.
static PvlGroup GetEnviromentInfo()
Runs some printenv commands that return Isis related Enviroment Variables.
static QString UserName()
Returns the user name.
void * GetGuiHelper(QString helper)
static UserInterface & GetUserInterface()
Returns the UserInterface object.
Application(int &argc, char *argv[])
Constuctor for the Application object.
void SetParentConnection(QLocalSocket *p_connection)
int FunctionError(IException &e)
Adds the error to the session log, sends the error to the parent if it has one, loads the error messa...
~Application()
Destroys the Application object.
static PvlGroup GetUnameInfo()
Runs various system specific uname commands and returns the results.
Gui for Isis Applications.
Execute External Programs and Commands.
Program progress reporter.
Contains multiple PvlContainers.
Container for cube-like labels.
Contains Pvl Groups and Pvl Objects.
Command Line and Xml loader, validation, and access.
This is free and unencumbered software released into the public domain.