Rename yaz_use_attribute_create to zget_AttributeList_use_string
[yaz-moved-to-github.git] / include / yaz / yaz-util.h
index aba53c0..eb6c382 100644 (file)
@@ -1,30 +1,30 @@
-/*
- * Copyright (c) 1995-2004, Index Data.
- *
- * Permission to use, copy, modify, distribute, and sell this software and
- * its documentation, in whole or in part, for any purpose, is hereby granted,
- * provided that:
- *
- * 1. This copyright and permission notice appear in all copies of the
- * software and its documentation. Notices of copyright or attribution
- * which appear at the beginning of any file must remain unchanged.
- *
- * 2. The name of Index Data or the individual authors may not be used to
- * endorse or promote products derived from this software without specific
- * prior written permission.
+/* 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:
  *
- * THIS SOFTWARE IS PROVIDED "AS IS" AND WITHOUT WARRANTY OF ANY KIND,
- * EXPRESS, IMPLIED, OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
- * WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
- * IN NO EVENT SHALL INDEX DATA BE LIABLE FOR ANY SPECIAL, INCIDENTAL,
- * INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES
- * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER OR
- * NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
- * LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
- * OF THIS SOFTWARE.
+ *     * 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.
  *
- * $Id: yaz-util.h,v 1.13 2004-12-10 10:42:33 heikki Exp $
+ * 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
 #include <yaz/yaz-version.h>
 #include <yaz/xmalloc.h>
 
-/* [y]log.h trickery */
-/* if [y]log.h has been included, do not worry about it */
-/* else warn here, and make sure log.h does not warn */
-
-#ifndef YLOG_H 
-
-#ifndef YAZ_USE_OLD_LOG
-#warning "yaz-util.h is deprecated - include the files directly, and use ylog.h"
-/* If you get tired of this message, configure your program like this */
-/* CFLAGS="-Wall -g -D YAZ_USE_OLD_LOG" ./configure   */
-#define YAZ_USE_OLD_LOG
-/* do not complain of the old log.h */
-#endif
-
-#include <yaz/log.h>  
-#endif
+#include <yaz/log.h>
 
 #include <yaz/tpath.h>
 #include <yaz/options.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 .
+
+    \section queryparsers Query parsers
+
+    PQF parsing: \ref pquery.h .
 
+    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
+ */
+