### ICurrentNonGUIApplication

  This class provides access to the current application. There is a certain amount of functionality which does not require any access to the INonGUIApplication object, so it can be accessed via this class for greater efficiency.

### ICurrentNonGUIApplication - Member Functions and Data by Group

### Constructors & Destructor

Construct and destruct objects of this class.

~ICurrentNonGUIApplication

      protected:
      virtual ~ICurrentNonGUIApplication()

  Destroys this object. Does not affect the process if it is still running.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

ICurrentNonGUIApplication

      protected:
      ICurrentNonGUIApplication()

  Constructs a current non-GUI application object.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

### Debug

Get debug information on the current application.

asDebugInfo

      public:
      virtual IString asDebugInfo() const

  Returns a string of formatted debug info for this object.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

pib

      protected:
      struct pib_s& pib()

  Return a reference to an OS/2 process information block (PIB) structure.

Supported Platforms

  Windows | OS/2 | AIX
  No | Yes | No

### Process Argument Methods

Set and access process command line arguments.

argc

      public:
      virtual int argc() const

  Returns the count of arguments for this process.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

argv

      public:
      virtual IString argv(int argumentNumber) const

  Returns a particular argument for this process. The passed argument number indicates which one.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

setArgs

      public:
      virtual ICurrentNonGUIApplication&
        setArgs( int argc,
                 const char * const argv [ ] )

  Sets the arguments for this process. Obvious it will not affect the process if the process is already started.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

### Process Control

Control the current process

exit

      public:
      virtual ICurrentNonGUIApplication& exit()

  Causes the current application to exit.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

### ICurrentNonGUIApplication - Inherited Member Functions and Data

#### Inherited Public Functions

  INonGUIApplication

  -     virtual INonGUIApplication&
          adjustPriority( long adjustment,
                          bool setDescendents = false )

  -     virtual IString asString() const

  -     static ICurrentNonGUIApplication& current()

  -     static IProcessId currentPID()

  -     virtual IProcessId id() const

  -     virtual INonGUIApplication&
          setPriority( PriorityClass priorityClass,
                       long priorityLevel = 0,
                       bool setDescendents = false )

  -     virtual INonGUIApplication&
          setProcessPriority( const EProcessPriority newPrio )

#### Inherited Public Data

  - None

#### Inherited Protected Functions

  INonGUIApplication

  -     virtual ~INonGUIApplication()

  -     INonGUIApplication(const IProcessId& id)

  -     virtual INonGUIApplication& setId(const IProcessId& id)

#### Inherited Protected Data

  - None