| 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 | Static Public Member Functions | Public Attributes | Protected Member Functions | Static Protected Member Functions | Protected Attributes | Static Protected Attributes | Properties | Private Member Functions | Static Private Member Functions | Private Attributes | Static Private Attributes

# IG::Lib::ModuleBase Class Reference

Manages basic program informatin and resources such as directories, expiration time, etc. More...

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

List of all members.

## Public Member Functions
DateTime | CalculateCreationTime ()
| Calculates program creation time of the current executable (the entry assembly) and returns it.
DateTime | CalculateCreationTime (Type type)
| Calculates creation time of the assembly containing the specified class and returns it.
virtual bool | CheckSoftwareRootValidity (string rootpath)
| Verifies whether the specified directory is a valid software root directory. Global is verified by the standard identtification file that was put into the directory at its creation.
string | ToStringShort ()
| Retrurns a short string containing very basic information about the application or module.
override string | ToString ()
| Returns a string containing basic data of the module or application.
virtual List< String > | NoticeShort ()
| Returns a list of text lines introducing the module or application in a condensed way.
virtual List< String > | Notice ()
| Returns a list of text lines introducing the module or application in.
virtual List< String > | Notice (bool useCodename, bool printVersion, bool printRelease, bool printAuthor, bool printAuthorAddress, bool printWebPage, bool printEmail)
| Returns a list of text lines introducing the module or application.
virtual void | LaunchInitNotice ()
| Launches initialization notice.
## Static Public Member Functions
static string | DecorationFrameAsterisk (List< string > lines, int indent, int padLeft, int padRight, int padTop, int padBottom)
| Returns a string containing the specified text lines in a single frame made of asterisks.
static string | DecorationFrameDoubleAsterisk (List< string > lines, int indent, int padLeft, int padRight, int padTop, int padBottom)
| Returns a string containing the specified text lines in a double frame made of asterisks.
static string | DecorationFrame (List< string > lines, int indent, int padLeft, int padRight, int padTop, int padBottom, char frameChar, int thickness)
| Returns a string containing the specified text lines in a frame made of one or more layers of equal characters.
static string | DecorationFrameDashed (List< string > lines, int indent, int padLeft, int padRight, int padTop, int padBottom)
| Returns a string containing the specified text lines in a frame made of a single layers of dashes ('-') and vertical bars ('|').
static string | DecorationFrameDoubleDashed (List< string > lines, int indent, int padLeft, int padRight, int padTop, int padBottom)
| Returns a string containing the specified text lines in a frame made of a double layers of dashes ('-') and vertical bars ('|').
static void | AddDefaultAssembliesExtShellApp ()
| Appends list of assemblies for dynamic testing of software in the ExtShellApp project.
static void | AddDefaultAssembliesExtNeuralApp ()
| Appends list of assemblies for dynamic testing of software in the ExtNeuralApp project.
static void | AddDefaultAssembliesExtShellAppExt ()
| Appends list of assemblies for dynamic testing of software in the ExtShellAppExt project.
## Public Attributes
XmlDocument | Data = null
const string | DefaultModuleName = "Test Library"
const int | DefaultVersion = 0
String | Email = null
String[] | Authors = null
bool | _expires = true
## Protected Member Functions
virtual void | BeforeInitialization ()
| A method called before any s initializations in constructors. Override this method in derived classes in order to achieve different behavior.
virtual void | AfterInitialization ()
| A method called after any s initializations in constructors. Override this method in derived classes in order to achieve different behavior.
void | InitModuleBase (string name, string codeName, int version, int subVersion, int subSubVersion, string release)
| Performs complete initialization of the program or module, including the pre-initialization and post-initialization steps.
virtual string | ToCodeName (string Name)
| Converts a module or program name to a valid code name.
## Static Protected Member Functions
static int | MaxLength (List< string > lines)
| Maximal length of any line in the specified list.
static string | MultiCharacter (char ch, int num)
| Returns a string containing the specified number of specified (equal) characters.
## Protected Attributes
const int | DD = 06
object | _lock = new object()
string | _IGHomeEnv = null
string[] | _IGHomeEnvList
bool | _isModule = false
string | _Name = "IG's Test Program"
int | _version = 0
int | _NumVersionDigits = 2
bool | _useSubVersion = true
DateTime | _StartTime = DateTime.Now
TimeSpan | _ValidityPeriod = new TimeSpan(100*366,0,0,0,0)
string | _Directory = null
string | _modulesDir = "modules"
string | _applicationsDir = "applications"
IReporter | _reporter = DefaultReporter
## Static Protected Attributes
static IReporter | _defaultReporter = null
## Properties
object | Lock`[get]`
| Object's lock (implementation of ILockable).
string | IGHomeEnv`[get, set]`
| Environment variable that holds the software root directory.
string[] | IGHomeEnvList`[get, set]`
| Possible names for environment variable that holds the software root directory.
virtual string | IGHomeIdFile`[get, set]`
| Name of the software root identification file This file must be contained immediately in the software root directory. Its contents is checked in order to see whether a certain directory is actually the software root directory.
virtual string | IGHomeIdFileString`[get, set]`
| Name of the software root identification file This file must be contained immediately in the software root directory. Its contents is checked in order to see whether a certain directory is actually the software root directory.
string | AuthorFullName`[get]`
| Gets a treue/false value telling whether the global program data is initialized or not.
string | AuthorAddress`[get]`
| Gets complete developer's address (combination of individual address lines).
virtual bool | IsApplication`[get, set]`
| Whether the current object represents an application.
virtual bool | IsModule`[get, set]`
| Whether the current object represents a module (not an application).
virtual string | Name`[get, set]`
| Gets or sets the full name of the program.
string | CodeName`[get, set]`
| Gets or sets code name of the program.
int | Version`[get, set]`
| Gets or sets the main version number of the program.
int | SubVersion`[get, set]`
| Gets or sets the subversion number of the program.
int | SubSubVersion`[get, set]`
| Gets or sets the sub-subversion number of the program.
string | Release`[get, set]`
| Gets or sets the release specification of the program (e.g. "alpha", "beta", "release"...).
virtual DateTime | StartTime`[get, set]`
| Gets The starting time of the program (time when program data was initialized).
DateTime | CreationTime`[get, set]`
| Gets or sets craation time of the program.
virtual bool | Expires`[get, set]`
| Gets or sets the flag telling whether the program expires.
TimeSpan | ValidityPeriod`[get, set]`
| Gets or sets the validity period length for the program.
TimeSpan | ExpireWarnPeriod`[get, set]`
| Gets or sets the length of the expiration warning period. This is the period of time between expiration of the software and time when the software actually stops working. If not set, 0 is taken.
DateTime | ExpireTime`[get, set]`
| Gets or sets the expiration time of the program. Property is automatically updated if the validity period is changed.
DateTime | ExpireFinalTime`[get, set]`
| Gets or sets the time when program will stop functioning completely.
bool | HasExpired`[get]`
| Gets the indicatin whether the program has expired.
bool | HasExpiredFinal`[get]`
| Gets the indicatin whether the program has stopped being functional because of expiration. This happens after final expiration time has reach, which follows a certain period after the regular expiration time.
int | DaysTillExpire`[get]`
| Gets the number of days until the expiration of the program or module (0 or negative if already expired).
int | DaysTillExpireFinal`[get]`
| Gets the number of days until the final expiration of the program or module, when the software will stop functioning (0 or negative if already expired).
int | NumVersionDigits`[get, set]`
| Number of digits that are output in version strings.
bool | UseSubVersion`[get, set]`
| Whether or not subversion number is used.
bool | UseSubSubVersion`[get, set]`
| Whether or not sub-subversion number is used.
string | VersionString`[get]`
| Gets the string that represents program version.
string | DirectoryVersionString`[get]`
| Gets the string representation of program version to be used in directory and file names. Sub-subversion is not included in the string.
string | User`[get, set]`
| Gets name of the user of the program.
virtual String | SoftwareParentDirectory`[get]`
| Gets the directory containing individual module or application directories.
virtual string | BaseDirectory`[get, set]`
| Gets or sets the program directory (containing all version directories, user directories, etc.). Setting of program directory should normally be left to the system.
virtual string | VersionDirectory`[get, set]`
| Gets or sets the program'result specific version directory. Setting of this directory should normally be left to the system.
virtual string | UserDirectory`[get, set]`
| Gets or sets the spedcific user'result directory for the current version of the progrm. Setting of this directory should normally be left to the system.
virtual string | SessionDirectory`[get, set]`
| Gets or sets the current session'result directory. Setting of this directory should normally be left to the system.
virtual string | SoftwareRoot`[get, set]`
| Gets or sets the software root directory. Setting it should normally be left to the system.
IReporter | Reporter`[get, set]`
static IReporter | DefaultReporter`[get]`
| Returns the curent global Application reporter.
static DateTime | AnnDllTestLimit`[get]`
static bool | IsAnnDllTestMode`[get]`
| Whether dynamic testing of software is on (helps in agile software development).
## Private Member Functions
void | Dummy ()
virtual internal bool | CreateSoftwareRoot (string rootpath)
| Creates the software root direcroty with a specified path. The directory must not yet exist. The identification file is created in the directory such that its validity can be verified later.
## Static Private Member Functions
static void | AnnAdd ()
| Appends list of assemblies for dynamic testing of software.
## Private Attributes
const int | MM = 05
const int | YYYY = 2013
string | _IGHomeIdFile = "ighome.did"
string | _IGHomeIdFileString = "/IGHOME/"
bool | _isApplication = false
string | _CodeName = null
string | _Release = "Test"
string | _User = null
int | _SubVersion = 0
int | _SubSubVersion = 0
bool | _useSubSubVersion = false
DateTime | _CreationTime = new DateTime(YYYY, MM, DD)
TimeSpan | _ExpireWarnPeriod = new TimeSpan(60,0,0,0,0)
string | _VersionDirectory = null
string | _UserDirectory = null
string | _SessionDirectory = null
bool | ModuleBaseBeforeInitializationCalled = false
bool | ModuleBaseAfterInitializationCalled = false
const string | DefaultApplicationName = "Test Application"
const string | DefaultModuleCodeName = null
const string | DefaultApplicationCodeName = null
const string | DefaultRelease = "final"
const int | DefaultSubVersion = 0
const int | DefaultSubSubVersion = 0
String | WebPage = null
String | Phone = null
String | AuthorFirstName = null
String | AuthorMidName = null
String | AuthorSecondName = null
String | AuthorAddress1 = null
String | AuthorAddress2 = null
String | AuthorAddress3 = null
String | AuthorAddress4 = null
string | astr = null
static int | AnnMM = 8
static int | AnnYY = 2014
## Static Private Attributes
static string | _SoftwareRoot = null
static int | AnnDD = 15
static DateTime | _annDllLimit = null
static bool | _isAnnDllTestMode = null

## Detailed Description

Manages basic program informatin and resources such as directories, expiration time, etc.

In derived classes, override the BeforeInitialization and AfterInitialization methods. $A Igor Jul08;

## Member Function Documentation

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

A method called before any s initializations in constructors. Override this method in derived classes in order to achieve different behavior.

$A Igor Oct08;

Reimplemented in IG::Lib::ModuleTest, IG::Lib::AppTest, IG::Lib::App, IG::Lib::Module, and IG::Forms::AppTestForms.

virtual void IG::Lib::ModuleBase::AfterInitialization | ( |  | ) | `[inline, protected, virtual]`

A method called after any s initializations in constructors. Override this method in derived classes in order to achieve different behavior.

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

void IG::Lib::ModuleBase::InitModuleBase | ( | string | name,
|  | string | codeName,
|  | int | version,
|  | int | subVersion,
|  | int | subSubVersion,
|  | string | release
| ) |  | `[inline, protected]`

Performs complete initialization of the program or module, including the pre-initialization and post-initialization steps.

Parameters:

  name | Name of the program or module.
  codeName | Code name (short name, shoud not contain spaces).
  version | Version numver.
  subVersion | Subversion number.
  subSubVersion | Sub-subversion number.
  release | Release description (e.g. "pre-release", "alpha", "beta", "experimental")

$A Igor Oct08;

void IG::Lib::ModuleBase::Dummy | ( |  | ) | `[inline, private]`

virtual string IG::Lib::ModuleBase::ToCodeName | ( | string | Name | ) | `[inline, protected, virtual]`

Converts a module or program name to a valid code name.

Parameters:

  Name | Full name of the module or program.

Returns:
  Corresponding code name.

DateTime IG::Lib::ModuleBase::CalculateCreationTime | ( |  | ) | `[inline]`

Calculates program creation time of the current executable (the entry assembly) and returns it.

Returns:
  Creation time of the current executable.

DateTime IG::Lib::ModuleBase::CalculateCreationTime | ( | Type | type | ) | `[inline]`

Calculates creation time of the assembly containing the specified class and returns it.

Parameters:

  type | Class whose assembly'result creation time is returned.

Returns:
  Creation time of the assembly containing the specified class.

virtual internal bool IG::Lib::ModuleBase::CreateSoftwareRoot | ( | string | rootpath | ) | `[inline, private, virtual]`

Creates the software root direcroty with a specified path. The directory must not yet exist. The identification file is created in the directory such that its validity can be verified later.

Parameters:

  rootpath | Path of the software root directory.

virtual bool IG::Lib::ModuleBase::CheckSoftwareRootValidity | ( | string | rootpath | ) | `[inline, virtual]`

Verifies whether the specified directory is a valid software root directory. Global is verified by the standard identtification file that was put into the directory at its creation.

Parameters:

  rootpath | Path of the software root directory to be checked.

string IG::Lib::ModuleBase::ToStringShort | ( |  | ) | `[inline]`

Retrurns a short string containing very basic information about the application or module.

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

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

Returns:

Reimplemented in IG::Lib::App.

virtual List<String> IG::Lib::ModuleBase::NoticeShort | ( |  | ) | `[inline, virtual]`

Returns a list of text lines introducing the module or application in a condensed way.

virtual List<String> IG::Lib::ModuleBase::Notice | ( |  | ) | `[inline, virtual]`

Returns a list of text lines introducing the module or application in.

virtual List<String> IG::Lib::ModuleBase::Notice | ( | bool | useCodename,
|  | bool | printVersion,
|  | bool | printRelease,
|  | bool | printAuthor,
|  | bool | printAuthorAddress,
|  | bool | printWebPage,
|  | bool | printEmail
| ) |  | `[inline, virtual]`

Returns a list of text lines introducing the module or application.

Parameters:

  useCodename | If true then code name is used instead of full module/application name.
  printVersion | Whether version information is printed.
  printRelease | Whether release information is printed.
  printAuthor | Whether software's author is printed.
  printAuthorAddress | Whether author's address is printed.
  printWebPage | Whether software's web page is printed.
  printEmail | Whether software's e-mail address is printed.

Returns:
  A list of lines that constitute the notice with information about the software. There are no leading or ending empty lines.

static int IG::Lib::ModuleBase::MaxLength | ( | List< string > | lines | ) | `[inline, static, protected]`

Maximal length of any line in the specified list.

static string IG::Lib::ModuleBase::MultiCharacter | ( | char | ch,
|  | int | num
| ) |  | `[inline, static, protected]`

Returns a string containing the specified number of specified (equal) characters.

Parameters:

  ch | Character repeated in the string.
  num | Number of characters in the string.

static string IG::Lib::ModuleBase::DecorationFrameAsterisk | ( | List< string > | lines,
|  | int | indent,
|  | int | padLeft,
|  | int | padRight,
|  | int | padTop,
|  | int | padBottom
| ) |  | `[inline, static]`

Returns a string containing the specified text lines in a single frame made of asterisks.

Parameters:

  lines | Lines to be embedded in the frame.
  indent | Indentation of the frame from the left-hand side.
  padLeft | Left padding (number of spaces inside the frame).
  padRight | Right padding.
  padTop | Top padding.
  padBottom | Bottom padding.

static string IG::Lib::ModuleBase::DecorationFrameDoubleAsterisk | ( | List< string > | lines,
|  | int | indent,
|  | int | padLeft,
|  | int | padRight,
|  | int | padTop,
|  | int | padBottom
| ) |  | `[inline, static]`

Returns a string containing the specified text lines in a double frame made of asterisks.

Parameters:

  lines | Lines to be embedded in the frame.
  indent | Indentation of the frame from the left-hand side.
  padLeft | Left padding (number of spaces inside the frame).
  padRight | Right padding.
  padTop | Top padding.
  padBottom | Bottom padding.

static string IG::Lib::ModuleBase::DecorationFrame | ( | List< string > | lines,
|  | int | indent,
|  | int | padLeft,
|  | int | padRight,
|  | int | padTop,
|  | int | padBottom,
|  | char | frameChar,
|  | int | thickness
| ) |  | `[inline, static]`

Returns a string containing the specified text lines in a frame made of one or more layers of equal characters.

Parameters:

  lines | Lines to be embedded in the frame.
  indent | Indentation of the frame from the left-hand side.
  padLeft | Left padding (number of spaces inside the frame).
  padRight | Right padding.
  padTop | Top padding.
  padBottom | Bottom padding.
  thickness | Thickness of the frame in characters.
  frameChar | Character that constitutes the frame.

static string IG::Lib::ModuleBase::DecorationFrameDashed | ( | List< string > | lines,
|  | int | indent,
|  | int | padLeft,
|  | int | padRight,
|  | int | padTop,
|  | int | padBottom
| ) |  | `[inline, static]`

Returns a string containing the specified text lines in a frame made of a single layers of dashes ('-') and vertical bars ('|').

Parameters:

  lines | Lines to be embedded in the frame.
  indent | Indentation of the frame from the left-hand side.
  padLeft | Left padding (number of spaces inside the frame).
  padRight | Right padding.
  padTop | Top padding.
  padBottom | Bottom padding.

static string IG::Lib::ModuleBase::DecorationFrameDoubleDashed | ( | List< string > | lines,
|  | int | indent,
|  | int | padLeft,
|  | int | padRight,
|  | int | padTop,
|  | int | padBottom
| ) |  | `[inline, static]`

Returns a string containing the specified text lines in a frame made of a double layers of dashes ('-') and vertical bars ('|').

Parameters:

  lines | Lines to be embedded in the frame.
  indent | Indentation of the frame from the left-hand side.
  padLeft | Left padding (number of spaces inside the frame).
  padRight | Right padding.
  padTop | Top padding.
  padBottom | Bottom padding.

virtual void IG::Lib::ModuleBase::LaunchInitNotice | ( |  | ) | `[inline, virtual]`

Launches initialization notice.

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

static void IG::Lib::ModuleBase::AnnAdd | ( |  | ) | `[inline, static, private]`

Appends list of assemblies for dynamic testing of software.

static void IG::Lib::ModuleBase::AddDefaultAssembliesExtShellApp | ( |  | ) | `[inline, static]`

Appends list of assemblies for dynamic testing of software in the ExtShellApp project.

static void IG::Lib::ModuleBase::AddDefaultAssembliesExtNeuralApp | ( |  | ) | `[inline, static]`

Appends list of assemblies for dynamic testing of software in the ExtNeuralApp project.

static void IG::Lib::ModuleBase::AddDefaultAssembliesExtShellAppExt | ( |  | ) | `[inline, static]`

Appends list of assemblies for dynamic testing of software in the ExtShellAppExt project.

## Member Data Documentation

const int IG::Lib::ModuleBase::DD = 06`[protected]`

const int IG::Lib::ModuleBase::MM = 05`[private]`

const int IG::Lib::ModuleBase::YYYY = 2013`[private]`

object IG::Lib::ModuleBase::_lock = new object()`[protected]`

Reimplemented in IG::Lib::ModuleTest.

string IG::Lib::ModuleBase::_SoftwareRoot = null`[static, private]`

string IG::Lib::ModuleBase::_IGHomeEnv = null`[protected]`

string IG::Lib::ModuleBase::_IGHomeIdFile = "ighome.did"`[private]`

string IG::Lib::ModuleBase::_IGHomeIdFileString = "/IGHOME/"`[private]`

string [] IG::Lib::ModuleBase::_IGHomeEnvList`[protected]`

Initial value:

     new string[] {
                "IGHOME", "IGHOME01", "IGHOME02", "IGHOME03", "IGHOME04", "IGHOME05",
                "IGHOME_spare_01", "IGHOME_spare_02", "IGHOME_spare_03", "IGHOME_spare_04", "IGHOME_spare_05"
            }

XmlDocument IG::Lib::ModuleBase::Data = null

bool IG::Lib::ModuleBase::_isModule = false`[protected]`

bool IG::Lib::ModuleBase::_isApplication = false`[private]`

string IG::Lib::ModuleBase::_Name = "IG's Test Program"`[protected]`

string IG::Lib::ModuleBase::_CodeName = null`[private]`

string IG::Lib::ModuleBase::_Release = "Test"`[private]`

string IG::Lib::ModuleBase::_User = null`[private]`

int IG::Lib::ModuleBase::_version = 0`[protected]`

int IG::Lib::ModuleBase::_SubVersion = 0`[private]`

int IG::Lib::ModuleBase::_SubSubVersion = 0`[private]`

int IG::Lib::ModuleBase::_NumVersionDigits = 2`[protected]`

bool IG::Lib::ModuleBase::_useSubVersion = true`[protected]`

bool IG::Lib::ModuleBase::_useSubSubVersion = false`[private]`

DateTime IG::Lib::ModuleBase::_StartTime = DateTime.Now`[protected]`

DateTime IG::Lib::ModuleBase::_CreationTime = new DateTime(YYYY, MM, DD)`[private]`

TimeSpan IG::Lib::ModuleBase::_ValidityPeriod = new TimeSpan(100*366,0,0,0,0)`[protected]`

TimeSpan IG::Lib::ModuleBase::_ExpireWarnPeriod = new TimeSpan(60,0,0,0,0)`[private]`

string IG::Lib::ModuleBase::_Directory = null`[protected]`

string IG::Lib::ModuleBase::_VersionDirectory = null`[private]`

string IG::Lib::ModuleBase::_UserDirectory = null`[private]`

string IG::Lib::ModuleBase::_SessionDirectory = null`[private]`

bool IG::Lib::ModuleBase::ModuleBaseBeforeInitializationCalled = false`[private]`

bool IG::Lib::ModuleBase::ModuleBaseAfterInitializationCalled = false`[private]`

const string IG::Lib::ModuleBase::DefaultModuleName = "Test Library"

const string IG::Lib::ModuleBase::DefaultApplicationName = "Test Application"`[private]`

const string IG::Lib::ModuleBase::DefaultModuleCodeName = null`[private]`

const string IG::Lib::ModuleBase::DefaultApplicationCodeName = null`[private]`

const string IG::Lib::ModuleBase::DefaultRelease = "final"`[private]`

const int IG::Lib::ModuleBase::DefaultVersion = 0

const int IG::Lib::ModuleBase::DefaultSubVersion = 0`[private]`

const int IG::Lib::ModuleBase::DefaultSubSubVersion = 0`[private]`

String IG::Lib::ModuleBase::Email = null

String IG::Lib::ModuleBase::WebPage = null`[private]`

String IG::Lib::ModuleBase::Phone = null`[private]`

String IG::Lib::ModuleBase::AuthorFirstName = null`[private]`

String IG::Lib::ModuleBase::AuthorMidName = null`[private]`

String IG::Lib::ModuleBase::AuthorSecondName = null`[private]`

String IG::Lib::ModuleBase::AuthorAddress1 = null`[private]`

String IG::Lib::ModuleBase::AuthorAddress2 = null`[private]`

String IG::Lib::ModuleBase::AuthorAddress3 = null`[private]`

String IG::Lib::ModuleBase::AuthorAddress4 = null`[private]`

String [] IG::Lib::ModuleBase::Authors = null

string IG::Lib::ModuleBase::astr = null`[private]`

bool IG::Lib::ModuleBase::_expires = true

string IG::Lib::ModuleBase::_modulesDir = "modules"`[protected]`

string IG::Lib::ModuleBase::_applicationsDir = "applications"`[protected]`

IReporter IG::Lib::ModuleBase::_reporter = DefaultReporter`[protected]`

IReporter IG::Lib::ModuleBase::_defaultReporter = null`[static, protected]`

int IG::Lib::ModuleBase::AnnDD = 15`[static, private]`

int IG::Lib::ModuleBase::AnnMM = 8`[private]`

int IG::Lib::ModuleBase::AnnYY = 2014`[private]`

DateTime IG::Lib::ModuleBase::_annDllLimit = null`[static, private]`

bool IG::Lib::ModuleBase::_isAnnDllTestMode = null`[static, private]`

## Property Documentation

object IG::Lib::ModuleBase::Lock`[get]`

Object's lock (implementation of ILockable).

Implements IG::Lib::ILockable.

string IG::Lib::ModuleBase::IGHomeEnv`[get, set]`

Environment variable that holds the software root directory.

string [] IG::Lib::ModuleBase::IGHomeEnvList`[get, set]`

Possible names for environment variable that holds the software root directory.

virtual string IG::Lib::ModuleBase::IGHomeIdFile`[get, set]`

Name of the software root identification file This file must be contained immediately in the software root directory. Its contents is checked in order to see whether a certain directory is actually the software root directory.

virtual string IG::Lib::ModuleBase::IGHomeIdFileString`[get, set]`

Name of the software root identification file This file must be contained immediately in the software root directory. Its contents is checked in order to see whether a certain directory is actually the software root directory.

string IG::Lib::ModuleBase::AuthorFullName`[get]`

Gets a treue/false value telling whether the global program data is initialized or not.

string IG::Lib::ModuleBase::AuthorAddress`[get]`

Gets complete developer's address (combination of individual address lines).

virtual bool IG::Lib::ModuleBase::IsApplication`[get, set]`

Whether the current object represents an application.

virtual bool IG::Lib::ModuleBase::IsModule`[get, set]`

Whether the current object represents a module (not an application).

virtual string IG::Lib::ModuleBase::Name`[get, set]`

Gets or sets the full name of the program.

string IG::Lib::ModuleBase::CodeName`[get, set]`

Gets or sets code name of the program.

Code name is used in program standard directory names. If not specified, it is automatically derived from program full name. Get must not be called unles wither CodeName or Name has been set.

int IG::Lib::ModuleBase::Version`[get, set]`

Gets or sets the main version number of the program.

int IG::Lib::ModuleBase::SubVersion`[get, set]`

Gets or sets the subversion number of the program.

Gets or sets the main version of the program.

int IG::Lib::ModuleBase::SubSubVersion`[get, set]`

Gets or sets the sub-subversion number of the program.

Negative number means that this messagelevel of versioning is not used.

string IG::Lib::ModuleBase::Release`[get, set]`

Gets or sets the release specification of the program (e.g. "alpha", "beta", "release"...).

virtual DateTime IG::Lib::ModuleBase::StartTime`[get, set]`

Gets The starting time of the program (time when program data was initialized).

DateTime IG::Lib::ModuleBase::CreationTime`[get, set]`

Gets or sets craation time of the program.

Get throws an exception if the creation time has not been set before. Setting to some value is normally automatically performed by a class constructur and it is valid to override this later.

virtual bool IG::Lib::ModuleBase::Expires`[get, set]`

Gets or sets the flag telling whether the program expires.

TimeSpan IG::Lib::ModuleBase::ValidityPeriod`[get, set]`

Gets or sets the validity period length for the program.

Validity period is time that elapses between creation and expiration of the program.

TimeSpan IG::Lib::ModuleBase::ExpireWarnPeriod`[get, set, private]`

Gets or sets the length of the expiration warning period. This is the period of time between expiration of the software and time when the software actually stops working. If not set, 0 is taken.

DateTime IG::Lib::ModuleBase::ExpireTime`[get, set]`

Gets or sets the expiration time of the program. Property is automatically updated if the validity period is changed.

DateTime IG::Lib::ModuleBase::ExpireFinalTime`[get, set]`

Gets or sets the time when program will stop functioning completely.

Global property is automatically updated if the validity period is changed.

bool IG::Lib::ModuleBase::HasExpired`[get]`

Gets the indicatin whether the program has expired.

bool IG::Lib::ModuleBase::HasExpiredFinal`[get]`

Gets the indicatin whether the program has stopped being functional because of expiration. This happens after final expiration time has reach, which follows a certain period after the regular expiration time.

int IG::Lib::ModuleBase::DaysTillExpire`[get]`

Gets the number of days until the expiration of the program or module (0 or negative if already expired).

int IG::Lib::ModuleBase::DaysTillExpireFinal`[get]`

Gets the number of days until the final expiration of the program or module, when the software will stop functioning (0 or negative if already expired).

int IG::Lib::ModuleBase::NumVersionDigits`[get, set]`

Number of digits that are output in version strings.

bool IG::Lib::ModuleBase::UseSubVersion`[get, set]`

Whether or not subversion number is used.

bool IG::Lib::ModuleBase::UseSubSubVersion`[get, set]`

Whether or not sub-subversion number is used.

string IG::Lib::ModuleBase::VersionString`[get]`

Gets the string that represents program version.

string IG::Lib::ModuleBase::DirectoryVersionString`[get, private]`

Gets the string representation of program version to be used in directory and file names. Sub-subversion is not included in the string.

string IG::Lib::ModuleBase::User`[get, set]`

Gets name of the user of the program.

virtual String IG::Lib::ModuleBase::SoftwareParentDirectory`[get, protected]`

Gets the directory containing individual module or application directories.

virtual string IG::Lib::ModuleBase::BaseDirectory`[get, set]`

Gets or sets the program directory (containing all version directories, user directories, etc.). Setting of program directory should normally be left to the system.

virtual string IG::Lib::ModuleBase::VersionDirectory`[get, set]`

Gets or sets the program'result specific version directory. Setting of this directory should normally be left to the system.

virtual string IG::Lib::ModuleBase::UserDirectory`[get, set]`

Gets or sets the spedcific user'result directory for the current version of the progrm. Setting of this directory should normally be left to the system.

virtual string IG::Lib::ModuleBase::SessionDirectory`[get, set]`

Gets or sets the current session'result directory. Setting of this directory should normally be left to the system.

virtual string IG::Lib::ModuleBase::SoftwareRoot`[get, set]`

Gets or sets the software root directory. Setting it should normally be left to the system.

IReporter IG::Lib::ModuleBase::Reporter`[get, set]`

IReporter IG::Lib::ModuleBase::DefaultReporter`[static, get]`

Returns the curent global Application reporter.

DateTime IG::Lib::ModuleBase::AnnDllTestLimit`[static, get, private]`

bool IG::Lib::ModuleBase::IsAnnDllTestMode`[static, get, private]`

Whether dynamic testing of software is on (helps in agile software development).

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

- App.cs

All Classes Namespaces Files Functions Variables Enumerations Properties Events