OpenIndiana and Solaris port
[oweals/cde.git] / cde / programs / dtinfo / DtMmdb / oliasdb / olias_server.h
1 /*
2  * CDE - Common Desktop Environment
3  *
4  * Copyright (c) 1993-2012, The Open Group. All rights reserved.
5  *
6  * These libraries and programs are free software; you can
7  * redistribute them and/or modify them under the terms of the GNU
8  * Lesser General Public License as published by the Free Software
9  * Foundation; either version 2 of the License, or (at your option)
10  * any later version.
11  *
12  * These libraries and programs are distributed in the hope that
13  * they will be useful, but WITHOUT ANY WARRANTY; without even the
14  * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
15  * PURPOSE. See the GNU Lesser General Public License for more
16  * details.
17  *
18  * You should have received a copy of the GNU Lesser General Public
19  * License along with these librararies and programs; if not, write
20  * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth
21  * Floor, Boston, MA 02110-1301 USA
22  */
23 /*
24  * $XConsortium: olias_server.h /main/3 1996/06/11 17:30:21 cde-hal $
25  *
26  * Copyright (c) 1992 HAL Computer Systems International, Ltd.
27  * All rights reserved.  Unpublished -- rights reserved under
28  * the Copyright Laws of the United States.  USE OF A COPYRIGHT
29  * NOTICE IS PRECAUTIONARY ONLY AND DOES NOT IMPLY PUBLICATION
30  * OR DISCLOSURE.
31  * 
32  * THIS SOFTWARE CONTAINS CONFIDENTIAL INFORMATION AND TRADE
33  * SECRETS OF HAL COMPUTER SYSTEMS INTERNATIONAL, LTD.  USE,
34  * DISCLOSURE, OR REPRODUCTION IS PROHIBITED WITHOUT THE
35  * PRIOR EXPRESS WRITTEN PERMISSION OF HAL COMPUTER SYSTEMS
36  * INTERNATIONAL, LTD.
37  * 
38  *                         RESTRICTED RIGHTS LEGEND
39  * Use, duplication, or disclosure by the Government is subject
40  * to the restrictions as set forth in subparagraph (c)(l)(ii)
41  * of the Rights in Technical Data and Computer Software clause
42  * at DFARS 252.227-7013.
43  *
44  *          HAL COMPUTER SYSTEMS INTERNATIONAL, LTD.
45  *                  1315 Dell Avenue
46  *                  Campbell, CA  95008
47  * 
48  */
49
50
51 #ifndef _olias_server_h
52 #define _olias_server_h 1
53
54 #include "oliasdb/dlp_hd.h"
55 #include "oliasdb/doc_hd.h"
56 #include "oliasdb/graphic_hd.h"
57 #include "oliasdb/locator_hd.h"
58 #include "oliasdb/node_hd.h"
59 #include "oliasdb/toc_hd.h"
60 #include "oliasdb/stylesheet_hd.h"
61 #include "api/info_lib.h"
62 #include "api/info_base.h"
63 #include "api/server.h"
64
65 #include "oliasdb/user_base.h"
66 #include "oliasdb/mark.h"
67 #include "oliasdb/pref.h"
68
69
70 class olias_server : public server
71 {
72
73 public:
74
75    enum TestSelector { LOC, GRA };
76    olias_server(
77                 Boolean delayed_infolib_init = false,
78                 char* selected_base_name = 0,
79                 char* x_info_lib_path = getenv("MMDB_PATH")
80                );
81    ~olias_server();
82
83   void init_infolib();
84
85   info_base* get_infobase(const char *locator_string, enum TestSelector = LOC);
86   info_base** get_infobases(char **locator_strings, int count, enum TestSelector = LOC);
87
88 protected:
89    dlp                  dlp_template;
90    doc                  doc_template;
91    graphic              graphic_template;
92    olias_locator        locator_template;
93    olias_node           node_template;
94    toc                  toc_template;
95    umark                mark_template;
96    pref                 pref_template;
97    stylesheet           stylesheet_template;
98
99 };
100
101
102 #endif