Annotation of libwww/Library/src/WWWApp.html, revision 2.15
2.1 frystyk 1: <HTML>
2: <HEAD>
2.14 frystyk 3: <TITLE>W3C Reference Library libwww Application Interface</TITLE>
2.1 frystyk 4: </HEAD>
5: <BODY>
2.12 eric 6: <H1>
2.14 frystyk 7: Application Interface
2.12 eric 8: </H1>
2.1 frystyk 9: <PRE>
10: /*
11: ** (c) COPYRIGHT MIT 1995.
12: ** Please first read the full copyright statement in the file COPYRIGH.
13: */
14: </PRE>
2.12 eric 15: <P>
16: In addition top the basic W3C Reference Library include file called
17: <A HREF="WWWLib.html">WWWLib.h</A> you <EM>can</EM> also include this file
18: called WWWApp.h depending on the needs of your application. However, it is
19: not required and none of the files included below are ever used in the core
20: part of the Library itself. Only if this file is included, the extra modules
21: will get included in the linked object code. It is also possible to include
22: only a subset of the files below if the functionality you are after is covered
23: by them.
2.1 frystyk 24: <PRE>
25: #ifndef WWWAPP_H
26: #define WWWAPP_H
27: </PRE>
28: <PRE>
29: #ifdef __cplusplus
30: extern "C" {
31: #endif
32: </PRE>
2.12 eric 33: <H2>
34: System dependencies
35: </H2>
36: <P>
2.11 frystyk 37: The <A HREF="sysdep.html">sysdep.h</A> file includes system-specific include
2.12 eric 38: files and flags for I/O to network and disk. The only reason for this file
39: is that the Internet world is more complicated than Posix and ANSI.
2.14 frystyk 40: <PRE>#include "<A HREF="sysdep.html">sysdep.h</A>"
2.11 frystyk 41: </PRE>
2.12 eric 42: <H2>
2.13 frystyk 43: Event Manager
44: </H2>
45: <P>
46: The core part of libwww only provides the hooks for the event manager. There
47: is no event loop internal to the core part. Instead the application must
48: provide the event loop in order to use either pseudo threads or real threads.
49: If the application only uses blocking sockets without threads then it is
50: not required to register any event loop at all. We provide a default
51: implementation of an event loop which you can either take or get some ideas
52: from.
53: <PRE>#include "<A HREF="HTEvntrg.html">HTEvntrg.h</A>"
54: </PRE>
55: <H2>
2.14 frystyk 56: Managing the Home Anchor
2.12 eric 57: </H2>
58: <P>
59: This module provides some "make life easier" functions in order to get the
60: application going. They help you generate the first anchor, also called the
61: <EM>home anchor</EM>. It also contains a nice set of default WWW addresses.
2.2 frystyk 62: <PRE>
63: #include "<A HREF="HTHome.html">HTHome.h</A>"
2.1 frystyk 64: </PRE>
2.12 eric 65: <H2>
66: User Dialogs and Messages
67: </H2>
68: <P>
69: You can register a set of callback functions to handle user prompting, error
70: messages, confimations etc. Here we give a set of functions that can be used
71: on almost anu thinkable platform. If you want to provide your own platform
72: dependent implementation then fine :-)
2.8 frystyk 73: <PRE>
74: #include "<A HREF="HTDialog.html">HTDialog.h</A>"
75: </PRE>
2.12 eric 76: <H2>
2.14 frystyk 77: Load, Upload, and Search URLs
78: </H2>
79: <P>
80: Even though you may use the API for the HTRequest object directly in order
81: to issue a request, you will probably find that in real life it is easier
82: to use a higher level abstraction API. This API is provided by the
83: <A HREF="HTAccess.html">HTAccess module</A> where you will find all kind
84: of functions for down loading a URL etc.
85: <PRE>
86: #include "<A HREF="HTAccess.html">HTAccess.h</A>"
87: </PRE>
88: <H2>
2.12 eric 89: After Terminating a Request
90: </H2>
91: <P>
92: When a request is terminated, the application often has to do some action
93: as a result of the request (and of the result of the request). The Application
94: part of the Library provides two following modules to handle <EM>logging</EM>
95: and <EM>history management</EM>. You can register a <EM>POST request
96: handler</EM> in the <A HREF="HTNet.html">Net Manager</A> as described in
97: the <A HREF="../User/Using/Overview.html">User's Guide</A>.
98: <P>
99: You can find a function called <CODE>HTLoadTerminate</CODE> in the
100: <A HREF="HTHome.html">HTHome module</A> that enables all the functionality
2.4 frystyk 101: for handling a request result.
2.12 eric 102: <H3>
103: Logging
104: </H3>
105: <P>
106: Often it is required to log the requests issued to the Library. This can
107: either be the case if the application is a server or it can also be useful
108: in a client application. This module provides a simple logging mechanism
109: which can be enabled if needed.
2.1 frystyk 110: <PRE>
2.2 frystyk 111: #include "<A HREF="HTLog.html">HTLog.h</A>"
2.1 frystyk 112: </PRE>
2.12 eric 113: <H3>
114: History Management
115: </H3>
116: <P>
117: Another type of logging is keeping track of which documents a user has visited
118: when browsing along on the Web. The Library history manager provides a basic
119: set of functionality to keep track of a linear history list.
2.1 frystyk 120: <PRE>
2.2 frystyk 121: #include "<A HREF="HTHist.html">HTHist.h</A>"
2.1 frystyk 122: </PRE>
2.12 eric 123: <P>
2.1 frystyk 124: End of application specific modules
125: <PRE>
126: #ifdef __cplusplus
127: } /* end extern C definitions */
128: #endif
129:
130: #endif
131: </PRE>
2.12 eric 132: <P>
133: <HR>
2.10 frystyk 134: <ADDRESS>
2.15 ! frystyk 135: @(#) $Id: WWWApp.html,v 2.14 1996/06/28 16:31:32 frystyk Exp $
2.10 frystyk 136: </ADDRESS>
2.12 eric 137: </BODY></HTML>
Webmaster