|
NCBI Home IEB Home C Toolkit docs C++ Toolkit source browser C Toolkit source browser (2) |
NCBI C Toolkit Cross ReferenceC/object/objmedli.h |
source navigation diff markup identifier search freetext search file search |
1 /* objmedli.h
2 * ===========================================================================
3 *
4 * PUBLIC DOMAIN NOTICE
5 * National Center for Biotechnology Information
6 *
7 * This software/database is a "United States Government Work" under the
8 * terms of the United States Copyright Act. It was written as part of
9 * the author's official duties as a United States Government employee and
10 * thus cannot be copyrighted. This software/database is freely available
11 * to the public for use. The National Library of Medicine and the U.S.
12 * Government have not placed any restriction on its use or reproduction.
13 *
14 * Although all reasonable efforts have been taken to ensure the accuracy
15 * and reliability of the software and data, the NLM and the U.S.
16 * Government do not and cannot warrant the performance or results that
17 * may be obtained by using this software or data. The NLM and the U.S.
18 * Government disclaim all warranties, express or implied, including
19 * warranties of performance, merchantability or fitness for any particular
20 * purpose.
21 *
22 * Please cite the author in any work or product based on this material.
23 *
24 * ===========================================================================
25 *
26 * File Name: objmedli.h
27 *
28 * Author: James Ostell
29 *
30 * Version Creation Date: 1/1/91
31 *
32 * $Revision: 6.1 $
33 *
34 * File Description: Object manager interface for module NCBI-Medline
35 *
36 * Modifications:
37 * --------------------------------------------------------------------------
38 * Date Name Description of modification
39 * ------- ---------- -----------------------------------------------------
40 *
41 *
42 * $Log: objmedli.h,v $
43 * Revision 6.1 1997/09/03 12:55:58 ostell
44 * added support for MedlineEntry.status
45 *
46 * Revision 6.0 1997/08/25 18:50:16 madden
47 * Revision changed to 6.0
48 *
49 * Revision 4.5 1997/08/20 19:17:11 madden
50 * Version 6 of ASN.1
51 *
52 * Revision 4.4 1997/06/19 18:41:37 vakatov
53 * [WIN32,MSVC++] Adopted for the "NCBIOBJ.LIB" DLL'ization
54 *
55 * Revision 4.3 1996/05/20 19:43:50 ostell
56 * added pub_type
57 *
58 * Revision 4.2 1996/03/29 21:09:59 ostell
59 * added support for PubMedId
60 *
61 * Revision 4.1 1995/12/22 17:16:07 grisha
62 * add function MedlineSiFree(), because new Client/Server
63 * library for MedArch server needs this function
64 *
65 * Revision 4.0 1995/07/26 13:48:06 ostell
66 * force revision to 4.0
67 *
68 * Revision 3.1 1995/05/15 21:22:00 ostell
69 * added Log line
70 *
71 *
72 *
73 * ==========================================================================
74 */
75
76 #ifndef _NCBI_Medline_
77 #define _NCBI_Medline_
78
79 #ifndef _ASNTOOL_
80 #include <asn.h>
81 #endif
82 #ifndef _NCBI_General_
83 #include <objgen.h>
84 #endif
85 #ifndef _NCBI_Biblio_
86 #include <objbibli.h>
87 #endif
88
89 #undef NLM_EXTERN
90 #ifdef NLM_IMPORT
91 #define NLM_EXTERN NLM_IMPORT
92 #else
93 #define NLM_EXTERN extern
94 #endif
95
96 #ifdef __cplusplus
97 extern "C" {
98 #endif
99
100 /*****************************************************************************
101 *
102 * loader
103 *
104 *****************************************************************************/
105 NLM_EXTERN Boolean LIBCALL MedlineAsnLoad PROTO((void));
106
107 /*****************************************************************************
108 *
109 * Medline-mesh
110 *
111 *****************************************************************************/
112 typedef struct mesh {
113 Boolean mp; /* main point */
114 CharPtr term;
115 ValNodePtr qual;
116 struct mesh PNTR next;
117 } MedlineMesh, PNTR MedlineMeshPtr;
118
119 NLM_EXTERN MedlineMeshPtr LIBCALL MedlineMeshNew PROTO((void));
120 NLM_EXTERN MedlineMeshPtr LIBCALL MedlineMeshFree PROTO((MedlineMeshPtr mmp));
121 NLM_EXTERN MedlineMeshPtr LIBCALL MedlineMeshAsnRead PROTO((AsnIoPtr aip, AsnTypePtr atp));
122 NLM_EXTERN Boolean LIBCALL MedlineMeshAsnWrite PROTO((MedlineMeshPtr mmp, AsnIoPtr aip, AsnTypePtr atp));
123
124 /*****************************************************************************
125 *
126 * Medline-rn
127 *
128 *****************************************************************************/
129 typedef struct rn {
130 Uint1 type;
131 CharPtr cit,
132 name;
133 struct rn PNTR next;
134 } MedlineRn, PNTR MedlineRnPtr;
135
136 NLM_EXTERN MedlineRnPtr LIBCALL MedlineRnNew PROTO((void));
137 NLM_EXTERN MedlineRnPtr LIBCALL MedlineRnFree PROTO((MedlineRnPtr mrp));
138 NLM_EXTERN MedlineRnPtr LIBCALL MedlineRnAsnRead PROTO((AsnIoPtr aip, AsnTypePtr atp));
139 NLM_EXTERN Boolean LIBCALL MedlineRnAsnWrite PROTO((MedlineRnPtr mrp, AsnIoPtr aip, AsnTypePtr atp));
140
141 /*****************************************************************************
142 *
143 * Medline-si
144 * ValNode used for structure
145 *
146 *****************************************************************************/
147 NLM_EXTERN ValNodePtr LIBCALL MedlineSiFree PROTO((ValNodePtr msp));
148 NLM_EXTERN ValNodePtr LIBCALL MedlineSiAsnRead PROTO((AsnIoPtr aip, AsnTypePtr atp));
149 NLM_EXTERN Boolean LIBCALL MedlineSiAsnWrite PROTO((ValNodePtr msp, AsnIoPtr aip, AsnTypePtr atp));
150
151 /*****************************************************************************
152 *
153 * DocRef
154 *
155 *****************************************************************************/
156 typedef struct df {
157 Uint1 type;
158 Int4 uid;
159 struct df PNTR next;
160 } DocRef, PNTR DocRefPtr;
161
162 NLM_EXTERN DocRefPtr LIBCALL DocRefNew PROTO((void));
163 NLM_EXTERN DocRefPtr LIBCALL DocRefFree PROTO((DocRefPtr drp));
164 NLM_EXTERN DocRefPtr LIBCALL DocRefAsnRead PROTO((AsnIoPtr aip, AsnTypePtr atp));
165 NLM_EXTERN Boolean LIBCALL DocRefAsnWrite PROTO((DocRefPtr drp, AsnIoPtr aip, AsnTypePtr atp));
166
167
168 /*****************************************************************************
169 *
170 * Medline-field
171 *
172 *****************************************************************************/
173 typedef struct mlf {
174 Uint1 type;
175 CharPtr str;
176 DocRefPtr ids;
177 struct mlf PNTR next;
178 } MedlineField, PNTR MedlineFieldPtr;
179
180 NLM_EXTERN MedlineFieldPtr LIBCALL MedlineFieldNew PROTO((void));
181 NLM_EXTERN MedlineFieldPtr LIBCALL MedlineFieldFree PROTO((MedlineFieldPtr mfp));
182 NLM_EXTERN MedlineFieldPtr LIBCALL MedlineFieldAsnRead PROTO((AsnIoPtr aip, AsnTypePtr atp));
183 NLM_EXTERN Boolean LIBCALL MedlineFieldAsnWrite PROTO((MedlineFieldPtr mfp, AsnIoPtr aip, AsnTypePtr atp));
184
185
186 /*****************************************************************************
187 *
188 * Medline-entry
189 *
190 *****************************************************************************/
191 typedef struct medline {
192 Int4 uid;
193 DatePtr em;
194 CitArtPtr cit;
195 CharPtr abstract;
196 MedlineMeshPtr mesh;
197 MedlineRnPtr substance;
198 ValNodePtr xref;
199 ValNodePtr idnum;
200 ValNodePtr gene;
201 Int4 pmid; /* PubMedId */
202 ValNodePtr pub_type;
203 MedlineFieldPtr mlfield;
204 Uint1 status; /* 1=supplied by publisher, 2=premedline, 3 or 0 = medline*/
205 } MedlineEntry, PNTR MedlineEntryPtr;
206
207 NLM_EXTERN MedlineEntryPtr LIBCALL MedlineEntryNew PROTO((void));
208 NLM_EXTERN MedlineEntryPtr LIBCALL MedlineEntryFree PROTO((MedlineEntryPtr mep));
209 NLM_EXTERN MedlineEntryPtr LIBCALL MedlineEntryAsnRead PROTO((AsnIoPtr aip, AsnTypePtr atp));
210 NLM_EXTERN Boolean LIBCALL MedlineEntryAsnWrite PROTO((MedlineEntryPtr mep, AsnIoPtr aip, AsnTypePtr atp));
211
212 #ifdef __cplusplus
213 }
214 #endif
215
216 #undef NLM_EXTERN
217 #ifdef NLM_EXPORT
218 #define NLM_EXTERN NLM_EXPORT
219 #else
220 #define NLM_EXTERN
221 #endif
222
223 #endif
224 |
This page was automatically generated by the
LXR engine.
Visit the LXR main site for more information. |