Rename yaz_use_attribute_create to zget_AttributeList_use_string
[yaz-moved-to-github.git] / include / yaz / yaz-util.h
index 5030bff..eb6c382 100644 (file)
-/*
- * Copyright (c) 1995-2000, Index Data.
- * See the file LICENSE for details.
- * Sebastian Hammer, Adam Dickmeiss
- *
- * $Log: yaz-util.h,v $
- * Revision 1.3  2001-04-06 12:26:46  adam
- * Optional CCL module. Moved atoi_n to marcdisp.h from yaz-util.h.
- *
- * Revision 1.2  2000/02/28 11:20:06  adam
- * Using autoconf. New definitions: YAZ_BEGIN_CDECL/YAZ_END_CDECL.
- *
- * Revision 1.1  1999/11/30 13:47:11  adam
- * Improved installation. Moved header files to include/yaz.
- *
- * Revision 1.6  1997/10/27 13:52:46  adam
- * Header yaz-util includes all YAZ utility header files.
- *
- * Revision 1.5  1997/09/04 07:58:36  adam
- * Added prototype for atoi_n.
- *
- * Revision 1.4  1997/09/01 08:49:54  adam
- * New windows NT/95 port using MSV5.0. To export DLL functions the
- * YAZ_EXPORT modifier was added. Defined in yconfig.h.
+/* This file is part of the YAZ toolkit.
+ * Copyright (C) Index Data.
+ * All rights reserved.
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
  *
- * Revision 1.3  1997/05/14 06:53:54  adam
- * C++ support.
+ *     * Redistributions of source code must retain the above copyright
+ *       notice, this list of conditions and the following disclaimer.
+ *     * Redistributions in binary form must reproduce the above copyright
+ *       notice, this list of conditions and the following disclaimer in the
+ *       documentation and/or other materials provided with the distribution.
+ *     * Neither the name of Index Data nor the names of its contributors
+ *       may be used to endorse or promote products derived from this
+ *       software without specific prior written permission.
  *
- * Revision 1.2  1996/02/20 17:58:09  adam
- * Added const to yaz_matchstr.
- *
- * Revision 1.1  1996/02/20  16:32:49  quinn
- * Created util file.
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED. IN NO EVENT SHALL THE REGENTS AND CONTRIBUTORS BE LIABLE FOR ANY
+ * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/**
+ * \file yaz-util.h
+ * \brief Header for common YAZ utilities
  */
 
 #ifndef YAZ_UTIL_H
 #define YAZ_UTIL_H
 
 #include <yaz/yconfig.h>
+#include <yaz/yaz-version.h>
 #include <yaz/xmalloc.h>
+
 #include <yaz/log.h>
+
 #include <yaz/tpath.h>
 #include <yaz/options.h>
 #include <yaz/wrbuf.h>
 #include <yaz/nmem.h>
 #include <yaz/readconf.h>
 #include <yaz/marcdisp.h>
+#include <yaz/yaz-iconv.h>
+#include <yaz/matchstr.h>
+
+/** \mainpage YAZ
+    \section intro_sec Introduction
+
+    For a general introduction to YAZ, read the
+    YAZ User's Guide and Reference at
+    http://www.indexdata.com/yaz/doc/
+    This is also located in the doc directory of the YAZ distribution.
+    (This main page is from yaz-util.h).
+
+    The following sections is just a summary of the most important
+    header files and where they belong.
+
+    \section utilities Utilies
+    Logging (syslog-like) utility \ref log.h .
+
+    Memory management for small blocks \ref nmem.h .
+
+    Write string buffer \ref wrbuf.h .
+
+    Options handling \ref options.h .
+
+    Character conversion \ref yaz-iconv.h .
+
+    MARC / MARCXML \ref marcdisp.h .
+
+    Testing framework: \ref test.h .
+
+    Record conversion: \ref record_conv.h .
+
+    Record retrieval: \ref retrieval.h .
+
+    Timing : \ref timing.h .
+
+    Locking: \ref mutex.h .
+
+    Daemon: \ref daemon.h .
+
+    Windows Service: \ref sc.h .
 
-YAZ_BEGIN_CDECL
+    \section queryparsers Query parsers
 
-YAZ_EXPORT int yaz_matchstr(const char *s1, const char *s2);
+    PQF parsing: \ref pquery.h .
 
-YAZ_END_CDECL
+    CCL parsing: \ref ccl.h .
 
+    CQL parsing and conversion: \ref cql.h .
+
+    Z39.50 sort: \ref sortspec.h .
+
+    \section ber BER handling
+
+    BER utilities (ODR): \ref odr.h .
+
+    \section z3950 Z39.50
+
+    Z39.50 common header: \ref proto.h .
+
+    Z39.50 core codecs: \ref z-core.h.
+
+    Z39.50 related formats:
+    \ref z-accdes1.h ,  \ref z-core.h ,
+    \ref z-estask.h , \ref z-oclcui.h , \ref z-sum.h
+    \ref z-accform1.h , \ref z-date.h ,
+    \ref z-exp.h ,    \ref z-opac.h ,   \ref z-sutrs.h
+    \ref z-acckrb1.h ,  \ref z-diag1.h ,
+    \ref z-grs.h ,    \ref z-rrf1.h ,   \ref z-uifr1.h
+    \ref z-charneg.h ,  \ref z-espec1.h
+    \ref z-mterm2.h , \ref z-rrf2.h ,   \ref z-univ.h .
+
+    Z39.50 extended services:
+    \ref zes-admin.h , \ref zes-exps.h , \ref zes-pquery.h ,
+    \ref zes-pset.h , \ref zes-update.h ,
+    \ref zes-expi.h , \ref zes-order.h ,  \ref zes-psched.h ,
+    \ref zes-update0.h .
+
+    Z39.50 diagnostics: \ref diagbib1.h .
+
+    Z39.50 externals: \ref prt-ext.h .
+
+    \section GDU Generic Data Unit (HTTP and BER)
+
+    Definitions for GDU and HTTP: \ref zgdu.h .
+
+    \section SRU SRU
+
+    SRU/SRW definitions: \ref srw.h .
+
+    SRW diagnostics: \ref diagsrw.h .
+
+    \section ILL ILL
+
+    Common header: \ref ill.h .
+
+    Codecs: \ref ill-core.h
+
+    \section ZOOM ZOOM
+
+    Common header: \ref zoom.h .
+
+    \section GFS Generic Frontend Server (GFS)
+
+    Header: \ref backend.h .
+
+*/
 #endif
+
+/*
+ * Local variables:
+ * c-basic-offset: 4
+ * c-file-style: "Stroustrup"
+ * indent-tabs-mode: nil
+ * End:
+ * vim: shiftwidth=4 tabstop=8 expandtab
+ */
+