Basic Application Framework Utilities Overview

Basic Application Framework Utilities (BAFL) is a utility library that enables Symbian Developers to use the system resources such as clipboard and file system. It is a complementary interface to the Symbian file system handling functions, and most of the APIs provided by this library requires a session with Symbian file system.

BAFL library details

The DLL that provides the functionality and the library to which your code must link is identified below.

DLL LIB Short description

bafl.dll

bafl.lib

Utility library providing APIs to access clipboard data, parse command-line arguments, and so on.

Description

A Symbian application developer can use this library to use the system resources for the most common and frequent tasks such as copying and pasting data, reading files, producing sounds, comparing strings, handling notifications and so on.

APIs

The key classes of BAFL are as follows:

API Description

CClipBoard

Provides access to the clipboard.

CCommandLineArguments

Provides access to the arguments passed to an application when it is launched from the graphical shell.

CDesCArray

Base class for implementing independent descriptor arrays.

CEnvironmentChangeNotifier

Enables an application to respond to changes in system environment.

RChangeNotifier

Provides a handle to the kernel-side environment change notification service. This service will notify the registered applications of any change in system environment, so that the applications can respond to the change by taking necessary actions.

RIncrMatcherBase

Provides functions for comparing two text buffers.

CBaNamedPlugins

Supports locale-specific translation of plug-in names.

RResourceFile

Provides access to the application resource files.

RStringPool

Provides access to the string pool.

CoeSoundPlayer

Utility class for simple sound playing.

BaSystemSound

Retrieves and modifies the system sounds settings.

Using BAFL

The following tutorials will guide Symbian Developers to use the BAFL utility library for various use-cases supported:

  • Copying and pasting data from clipboard

  • Parsing command-line arguments

  • Creating and managing descriptor arrays

  • Handling environment change notifications

  • Comparing text buffers

  • Displaying names of plug-ins

  • Reading application resource files

  • Producing sounds for common events such as messages and errors

  • Handling pre-defined string constants