# Using the W3C Sample Code Library

This part of the documentation talks about the majority of the libwww classses and how to use them.

## Getting Started

Get an introduction to how to get started writing the first application using libwww. You may also want to have a look at the quick overview if this is all you are interested in.

## Libwww Core Classes

The libwww core is the set of modules that are part of the libwww runtime. Essentially the runtime is nothing but a registry for handling protocol access, document parsers. All these features are registerered dynamically using an open set of application modules.

- The Request Class
- Request Preferences
- The Anchor Class
- The Link Class
- The Response Class
- BEFORE and AFTER Filters
- The Stream Class
- The Host Class
- The DNS Class
- The Transport Class
- The Protocol Class
- Bindings to the local File system
- Protocol Headers and Extensions
- The Error Class
- User Dialogs and Progress Notifications
- The Event Manager
- Basic Timers

## Application Modules and Filters

In the libwww distribution file you will find many modules that actually does much more than libwww core itself. The application can register the precise set of modules that provides the desired functionality. This section discusses the application modules and what functionality they provide.

- Application Profiles
- The Persistent Cache Manager
- Proxy Server and Gateway Filter
- Rule File Filter and Rule File Syntax
- Request Log Filter
- History List Manager
- HTML Parser Stream

## Utility Modules

The Library contains a set of basic utility modules which are used throughour all the Library code. The APIs defined by the WWWUtil interface provides basic memory management and container modules. You can see a list of the utility modules in the Library Internals

- Dynamic Memory Management
- Trace Messages and Preprocessor Defines