ProgrammerGuide: Difference between revisions

From OPeNDAP Documentation
⧼opendap2-jumptonavigation⧽
No edit summary
m (removed old cruft and broken links)
 
(16 intermediate revisions by one other user not shown)
Line 20: Line 20:
currently supported by the DODS team, or who have an existing application
currently supported by the DODS team, or who have an existing application
that uses an idiosyncratic or unusual API for data access. Most people will
that uses an idiosyncratic or unusual API for data access. Most people will
be able to use one of the already written servers or client libraries. See
be able to use one of the already written servers or client libraries.
the [http://www.opendap.org/support/docs.html/user/guide-html/<cite>The OPeNDAP User Guide</cite>] for a list of these.


This documentation assumes that the readers are \Cpp programmers, are
This documentation assumes that the readers are C++ programmers, are
familiar with networked applications, and the POSIX programming environment.
familiar with networked applications, and the POSIX programming environment.
The DODS/OPeNDAP project also provides a native Java class library (API)
The DODS/OPeNDAP project also provides a native Java class library (API)
that parallels the \Cpp spftware described here.\footnote{While this manual
that parallels the C++ spftware described here.[[ProgrammerGuideFootnotes |(1)]]
describes the \Cpp toolkit in detail, all of the concepts and much of the
structure can be directly translated to the Java toolkit.}
 
Also available are two tutorials, [http://www.opendap.org/support/docs.html/api/wc-html/<cite>Writing an OPeNDAP Client</cite>] and [http://www.opendap.org/support/docs.html/api/wc-html/<cite>Writing an OPeNDAP Server</cite>] , which
descrie how to write a client or a server, respectively.


Because the type of information presented in a document like this depends to
Because the type of information presented in a document like this depends to
Line 38: Line 32:
email those questions and we'll send back an answer as well as including that
email those questions and we'll send back an answer as well as including that
information in the next version of this document. Send queries to:
information in the next version of this document. Send queries to:
\DODSsupport.
[mailto:support@opendap.org support@opendap.org].
 


==Organization of this Document==
==Organization of this Document==
Line 47: Line 40:
<blockquote>
<blockquote>


; ([http://www <cite> tk,overview</cite>]) : provides background information on the
; [[ProgrammerGuideChapter1 | Chapter 1]] :  
organization of the toolkit software.
provides background information on the organization of the toolkit software.
 
; [[ProgrammerGuideChapter2 | Chapter 2]] :
describes how to use the Network I/O classes to manage virtual connections.
 
; [[ProgrammerGuideChapter3 | Chapter 3]] :
discusses how to sub-class the toolkit \Cpp classes so that they are specialized for your specific use.


; ([http://www <cite> tk,manage-conns</cite>]) : describes how to use the
; [[ProgrammerGuideChapter4 | Chapter 4]] :  
Network I/O classes to manage virtual connections.
describes in detail how to write certain sections of both the data server and the client-library for a new API.


; ([http://www <cite> tk,subclassing</cite>]) : discusses how to sub-class the toolkit
; [[ProgrammerGuideChapter5 | Chapter 5]] :
\Cpp classes so that they are specialized for your specific use.
linking your program


; ([http://www <cite> tk,using</cite>]) : describes in detail how to write certain
; [[ProgrammerGuideChapter6 | Chapter 6]] :  
sections of both the data server and the client-library for a new API.
a overview of the OPeNDAP server Architecture


; ([http://www <cite> tk,linking</cite>]) : describes how to link user programs
with the new client-library implementation of an API.


\texonly{; ([http://www <cite> tk,classref</cite>]) : contains complete
; [[ProgrammerGuideChapter7 | Chapter 7]] :
descriptions of all the DODS classes.}
describes how to link user programs with the new client-library implementation of an API.


; [[ProgrammerGuideFootnotes | Footnotes]] :
Footnotes
</blockquote>
</blockquote>



Latest revision as of 20:27, 12 August 2009

Preface

This document describes how to use the OPeNDAP toolkit software to build OPeNDAP data servers, clients and client-libraries. Using the objects and functions contained in the toolkit, you can create programs which serve data over the internet as well as programs that can request data from any OPeNDAP server.

This document covers release 3.4 and later of the DODS software.


Who is this Guide for?

This guide is for people who wish to use the OPeNDAP software to write a new OPeNDAP data server, a new client, or a new client library. Typically, this will only be those people who wish to serve data in a format that is not currently supported by the DODS team, or who have an existing application that uses an idiosyncratic or unusual API for data access. Most people will be able to use one of the already written servers or client libraries.

This documentation assumes that the readers are C++ programmers, are familiar with networked applications, and the POSIX programming environment. The DODS/OPeNDAP project also provides a native Java class library (API) that parallels the C++ spftware described here.(1)

Because the type of information presented in a document like this depends to a large extent on the needs of its readers we welcome your feedback and comments. In particular, if you have any questions about individual sections, email those questions and we'll send back an answer as well as including that information in the next version of this document. Send queries to: support@opendap.org.

Organization of this Document

This Guide is divided into five chapters.

Chapter 1

provides background information on the organization of the toolkit software.

Chapter 2

describes how to use the Network I/O classes to manage virtual connections.

Chapter 3

discusses how to sub-class the toolkit \Cpp classes so that they are specialized for your specific use.

Chapter 4

describes in detail how to write certain sections of both the data server and the client-library for a new API.

Chapter 5

linking your program

Chapter 6

a overview of the OPeNDAP server Architecture


Chapter 7

describes how to link user programs with the new client-library implementation of an API.

Footnotes

Footnotes

Note that this is "not" a reference volume. See The OPeNDAP Programmer's Guideref for a concise listing of the member functions in each of the toolkit's classes.