### IApplication

  The IApplication class represents processes. The Open Class Library only supports the currently executing application, the single object of the derived class ICurrentApplication. IApplication::current provides access to that object.

  This class maintains a static pointer to the C++ object representing the currently executing application. It does so to implement the static member function current, which returns a reference to the ICurrentApplication object. The set of functions that you can apply to the current application is different from the set of functions you can apply to other applications. ICurrentApplication defines these functions.

### IApplication - Member Functions and Data by Group

### Constructors & Destructor

The constructors and destructor for this class are protected. You must derive from this class if you want to use it to represent an application.

~IApplication

      protected:
      virtual ~IApplication()

Supported Platforms

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

IApplication

      protected:
      IApplication(const IProcessId& id)

  You can only construct objects of this class with the process identifier for the process that the object will represent.

Supported Platforms

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

### Process Information

Use these members to get additional information about a process, such as the process identifier, or to access the object for the current process.

current

      public:
      static ICurrentApplication& current()

  Returns a reference to the current application, which is an object of the class ICurrentApplication.

Supported Platforms

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

### IApplication - Inherited Member Functions and Data

#### Inherited Public Functions

  INonGUIApplication

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

  -     virtual IString asDebugInfo() const

  -     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