| IGLib 1.4 The IGLib base library for development of numerical, technical and business applications.

- Main Page
- Namespaces
- Classes
- Files
- Directories

- Class List
- Class Index
- Class Hierarchy
- Class Members

Public Member Functions | Public Attributes | Protected Member Functions | Static Protected Member Functions | Protected Attributes | Static Protected Attributes | Properties

# IG::Lib::App Class Reference

Base class for all application classes. Provides some basic functionality such as keeping information about the application, managing application directories and basic files, etc. More...

Inheritance diagram for IG::Lib::App:
[legend]
Collaboration diagram for IG::Lib::App:
[legend]

List of all members.

## Public Member Functions
| App (string programName, int version, int subVersion)
| Constructs a new application object.
| App (string programName, int version, int subVersion, string release)
| Constructs a new application object.
| App (string programName, int version, int subVersion, int subSubVersion, string release)
| Initializes the global data for the current program.
| App (string programName, string codeName, int version, int subVersion, string release)
| Initializes the global data for the current program.
| App (string programName, string codeName, int version, int subVersion, int subSubVersion, string release)
| Constructs a new application object.
void | SetCommandlineArguments (string[] args)
| Sets command-line arguments of the application.
virtual void | ParseCommandlineArguments (string[] args)
| Parses command-line arguments and eventually sets various internal variables according to their values. This method should be overrideden in derived classes and executed somewhere in the application (possibly in the initialization part).Base class' ParseCommandlineArguments should be called in the overridden methods.
void | AddModule (Module m)
| Adds the specified module to the application's list of modules.
void | RemoveModule (Module m)
| Removes the specified module to the application's list of modules.
override string | ToString ()
| Returns a string containing basic data of the module or application.
## Public Attributes
int | _numCommandlineArguments
## Protected Member Functions
virtual void | InitProgram (string programName, string codeName, int version, int subVersion, int subSubVersion, string release)
| Constructs a new application object.
override void | BeforeInitialization ()
| Pre-initialization stage.
int | FindModuleIndex (Module m)
## Static Protected Member Functions
static void | InitApp ()
| Initializes the global application data. This should be called in derived class' Init().
## Protected Attributes
string[] | _commandLineArguments
List< Module > | _modules = new List<Module>()
## Static Protected Attributes
static object | lockGlobal = new Object()
| Global application data lock.
static App | _global = new App(DefaultApplicationName, DefaultVersion, DefaultSubVersion)
static bool | _initializedGlobal = false
## Properties
string[] | CommandlineArguments`[get, set]`
| Command-line arguments.
int | NumCommandlineArguments`[get, set]`
| Number of command-line arguments.
static App | Global`[get, set]`
| Gets the global instance of the App class, representing the current program.
static bool | InitializedGlobal`[get, set]`
| Gets a true/false value telling whether the global application data is initialized or not.
static IReporter | Rep`[get, set]`
| Application's reporter.

## Detailed Description

Base class for all application classes. Provides some basic functionality such as keeping information about the application, managing application directories and basic files, etc.

$A Igor Oct08;

## Constructor & Destructor Documentation

IG::Lib::App::App | ( | string | programName,
|  | int | version,
|  | int | subVersion
| ) |  | `[inline]`

Constructs a new application object.

Parameters:

  programName | Full name of the program.
  version | Version of the program.
  subVersion | Sub-version of the program.

IG::Lib::App::App | ( | string | programName,
|  | int | version,
|  | int | subVersion,
|  | string | release
| ) |  | `[inline]`

Constructs a new application object.

Parameters:

  programName | Full name of the program.
  version | Version of the program.
  subVersion | Sub-version of the program.
  release | Lifecycle stage of the program version (alpha, beta, release, etc.)

IG::Lib::App::App | ( | string | programName,
|  | int | version,
|  | int | subVersion,
|  | int | subSubVersion,
|  | string | release
| ) |  | `[inline]`

Initializes the global data for the current program.

Parameters:

  programName | Full name of the program.
  version | Version of the program.
  subVersion | Sub-version of the program.
  subsubVersion | Sub-subversion of the program. A negative number means that this messagelevel of versioning is not used.
  release | Lifecycle stage of the program version (alpha, beta, release, etc.)

IG::Lib::App::App | ( | string | programName,
|  | string | codeName,
|  | int | version,
|  | int | subVersion,
|  | string | release
| ) |  | `[inline]`

Initializes the global data for the current program.

Parameters:

  programName | Full name of the program.
  codeName | Short program codename, appropriate for use in directory names. If not specified then it is automatically formed from the full name
  version | Version of the program.
  subVersion | Sub-version of the program.
  release | Lifecycle stage of the program version (alpha, beta, release, etc.)

IG::Lib::App::App | ( | string | programName,
|  | string | codeName,
|  | int | version,
|  | int | subVersion,
|  | int | subSubVersion,
|  | string | release
| ) |  | `[inline]`

Constructs a new application object.

Parameters:

  programName | Full name of the program.
  codeName | Short program codename, appropriate for use in directory names. If not specified then it is automatically formed from the full name.
  version | Version of the program.
  subVersion | Sub-version of the program.
  subsubVersion | Sub-subversion of the program. A negative number means that this messagelevel of versioning is not used.
  release | Lifecycle stage of the program version (alpha, beta, release, etc.)

## Member Function Documentation

virtual void IG::Lib::App::InitProgram | ( | string | programName,
|  | string | codeName,
|  | int | version,
|  | int | subVersion,
|  | int | subSubVersion,
|  | string | release
| ) |  | `[inline, protected, virtual]`

Constructs a new application object.

Parameters:

  programName | Full name of the program.
  codeName | Short program codename, appropriate for use in directory names. If not specified then it is automatically formed from the full name.
  version | Version of the program.
  subVersion | Sub-version of the program.
  subsubVersion | Sub-subversion of the program. A negative number means that this messagelevel of versioning is not used.
  release | Lifecycle stage of the program version (alpha, beta, release, etc.)

override void IG::Lib::App::BeforeInitialization | ( |  | ) | `[inline, protected, virtual]`

Pre-initialization stage.

Reimplemented from IG::Lib::ModuleBase.

Reimplemented in IG::Lib::AppTest, and IG::Forms::AppTestForms.

void IG::Lib::App::SetCommandlineArguments | ( | string[] | args | ) | `[inline]`

Sets command-line arguments of the application.

Parameters:

  args | Command-line arguments to be set.

virtual void IG::Lib::App::ParseCommandlineArguments | ( | string[] | args | ) | `[inline, virtual]`

Parses command-line arguments and eventually sets various internal variables according to their values. This method should be overrideden in derived classes and executed somewhere in the application (possibly in the initialization part).Base class' ParseCommandlineArguments should be called in the overridden methods.

Parameters:

  args | Command line arguments.

int IG::Lib::App::FindModuleIndex | ( | Module | m | ) | `[inline, protected]`

void IG::Lib::App::AddModule | ( | Module | m | ) | `[inline]`

Adds the specified module to the application's list of modules.

Parameters:

  m | Module to be added.

void IG::Lib::App::RemoveModule | ( | Module | m | ) | `[inline]`

Removes the specified module to the application's list of modules.

Parameters:

  m | Module to be removed.

override string IG::Lib::App::ToString | ( |  | ) | `[inline]`

Returns a string containing basic data of the module or application.

Returns:

Reimplemented from IG::Lib::ModuleBase.

static void IG::Lib::App::InitApp | ( |  | ) | `[inline, static, protected]`

Initializes the global application data. This should be called in derived class' Init().

## Member Data Documentation

string [] IG::Lib::App::_commandLineArguments`[protected]`

int IG::Lib::App::_numCommandlineArguments

List<Module> IG::Lib::App::_modules = new List<Module>()`[protected]`

object IG::Lib::App::lockGlobal = new Object()`[static, protected]`

Global application data lock.

App IG::Lib::App::_global = new App(DefaultApplicationName, DefaultVersion, DefaultSubVersion)`[static, protected]`

bool IG::Lib::App::_initializedGlobal = false`[static, protected]`

## Property Documentation

string [] IG::Lib::App::CommandlineArguments`[get, set]`

Command-line arguments.

int IG::Lib::App::NumCommandlineArguments`[get, set]`

Number of command-line arguments.

App IG::Lib::App::Global`[static, get, set]`

Gets the global instance of the App class, representing the current program.

bool IG::Lib::App::InitializedGlobal`[static, get, set]`

Gets a true/false value telling whether the global application data is initialized or not.

IReporter IG::Lib::App::Rep`[static, get, set]`

Application's reporter.

The documentation for this class was generated from the following file:

- App.cs

All Classes Namespaces Files Functions Variables Enumerations Properties Events