Official websites use .gov
A .gov website belongs to an official government organization in the United States.

Secure .gov websites use HTTPS
A lock ( ) or https:// means you’ve safely connected to the .gov website. Share sensitive information only on official, secure websites.

Isis 3 Programmer Reference
Isis.h
1
5
6/* SPDX-License-Identifier: CC0-1.0 */
7
8#ifdef __GTHREADS
9#error *****Isis.h MUST be included before any other files!*****
10#endif
11
12#include <signal.h>
13
14#include <QCoreApplication>
15
16#include "Application.h"
17
18#ifndef APPLICATION
19#define APPLICATION IsisMain
20#endif
21
66std::map<QString, void *> GuiHelpers();
67#ifndef GUIHELPERS
68std::map<QString, void *> GuiHelpers() {
69 std::map<QString, void *> empty;
70 return empty;
71}
72#endif
73
74void APPLICATION();
75
76void startMonitoringMemory();
77void stopMonitoringMemory();
78void SegmentationFault(int);
79void Abort(int);
80void InterruptSignal(int);
81
90int main(int argc, char *argv[]) {
91 // Verify ISISROOT was set
92 // Note: as printing and logging IExceptions requires ISISROOT to be set (for preferences),
93 // The case below cannot be handled with IExceptions
94 if (getenv("ISISROOT") == NULL || QString(getenv("ISISROOT")) == "") {
95 std::cerr << "Please set ISISROOT before running any Isis applications" << std::endl;
96 exit(1);
97 }
98
99 Isis::Application::p_applicationForceGuiApp = false;
100
101#ifdef USE_GUI_QAPP
102 Isis::Application::p_applicationForceGuiApp = true;
103#endif
104
105 Isis::Application *app = new Isis::Application(argc, argv);
107 int status = app->Run(APPLICATION);
108 delete app;
109 delete QCoreApplication::instance();
110 return status;
111}
int Run(void(*funct)())
Runs the program defined in the function funct.
void RegisterGuiHelpers(std::map< QString, void * > helpers)
std::map< QString, void * > GuiHelpers()
Base include file for all Isis applications.
Definition Isis.h:68