NCBI C Toolkit Cross Reference

C/asnlib/asnout.h


  1 /* asnout.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:  asnout.h
 27 *
 28 * Author:  James Ostell
 29 *
 30 * Version Creation Date: 1/1/91
 31 *
 32 * $Revision: 6.1 $
 33 *
 34 * File Description:
 35 *   typedefs and prototypes used internally by asnout.c
 36 *
 37 * Modifications:
 38 * --------------------------------------------------------------------------
 39 * Date     Name        Description of modification
 40 * -------  ----------  -----------------------------------------------------
 41 *
 42 *
 43 * $Log: asnout.h,v $
 44 * Revision 6.1  2001/06/26 22:03:04  juran
 45 * Make C++-compatible.
 46 *
 47 * Revision 6.0  1997/08/25 18:10:16  madden
 48 * Revision changed to 6.0
 49 *
 50 * Revision 5.1  1996/12/03 21:43:48  vakatov
 51 * Adopted for 32-bit MS-Windows DLLs
 52 *
 53  * Revision 5.0  1996/05/28  14:00:29  ostell
 54  * Set to revision 5.0
 55  *
 56  * Revision 4.0  1995/07/26  13:47:38  ostell
 57  * force revision to 4.0
 58  *
 59  * Revision 2.2  1995/05/15  18:38:28  ostell
 60  * added Log line
 61  *
 62 *
 63 * ==========================================================================
 64 */
 65 
 66 #ifndef _ASNOUT_
 67 #define _ASNOUT_
 68 
 69 #undef NLM_EXTERN
 70 #ifdef NLM_IMPORT
 71 #define NLM_EXTERN NLM_IMPORT
 72 #else
 73 #define NLM_EXTERN extern
 74 #endif
 75 
 76 
 77 #define SYMBOLLEN_MAX   31      /* maximum length of defined symbol in chars */
 78 
 79 #ifdef __cplusplus
 80 extern "C" {
 81 #endif
 82 
 83 typedef struct tmptype {
 84         AsnTypePtr ptr;
 85         Int2 index;
 86         struct tmptype PNTR next;
 87 } AsnTmpType, PNTR AsnTmpTypePtr;
 88 
 89 typedef struct tmpvalue {
 90         AsnValxNodePtr val;
 91         Int2 index;
 92         struct tmpvalue PNTR next;
 93 } AsnTmpValue, PNTR AsnTmpValuePtr;
 94 
 95 typedef struct asnproc {
 96         AsnTmpValue root_tmpvalue;
 97         AsnTmpValuePtr curr_tmpvalue;
 98         AsnTmpType root_tmptype;
 99         AsnTmpTypePtr curr_tmptype;
100 } AsnProc, PNTR AsnProcPtr;
101 
102 
103 /*****************************************************************************
104 *
105 *   prototypes
106 *
107 *****************************************************************************/
108 
109 NLM_EXTERN void AsnOutput PROTO((CharPtr filename, AsnModulePtr amp, Boolean loader, Int2 maxDefineLength));
110 NLM_EXTERN Int2 AsnOutFindValue PROTO((AsnProcPtr app, AsnValxNodePtr avnp));
111 NLM_EXTERN AsnTypePtr AsnOutAddType PROTO((AsnProcPtr app, AsnTypePtr atp));
112 NLM_EXTERN Boolean AsnOutNewType PROTO((AsnProcPtr app, AsnTypePtr atp));
113 NLM_EXTERN AsnTmpTypePtr AsnOutFindType PROTO((AsnProcPtr app, AsnTypePtr atp));
114 NLM_EXTERN void AsnOutNewValueChain PROTO((AsnProcPtr app, AsnValxNodePtr avnp));
115 NLM_EXTERN void AsnOutDefineType PROTO((FILE *fp, AsnProcPtr app, AsnTypePtr atp, Int2 maxDefineLength));
116 NLM_EXTERN void AsnOutDefineElement PROTO((FILE *fp, AsnProcPtr app, AsnTypePtr atp, CharPtr buf, CharPtr pnt, Int2 maxDefineLength));
117 
118 #ifdef __cplusplus
119 }
120 #endif
121 
122 #undef NLM_EXTERN
123 #ifdef NLM_EXPORT
124 #define NLM_EXTERN NLM_EXPORT
125 #else
126 #define NLM_EXTERN
127 #endif
128 
129 #endif
130 

source navigation ]   [ diff markup ]   [ identifier search ]   [ freetext search ]   [ file search ]  

This page was automatically generated by the LXR engine.
Visit the LXR main site for more information.