NCBI C Toolkit Cross Reference

C/biostruc/corematx.h


  1 /*   corematx.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:  corematx.h
 27 *
 28 * Author:  Hogue
 29 *
 30 * Version Creation Date:   3/20/95
 31 *
 32 * $Revision: 6.0 $
 33 *
 34 * File Description: 
 35 *       Numerical Recipies in C toolkit-ized
 36 *       matrix and vector allocators and free-ers
 37 *       see corematx.c for implementation docs.
 38 *
 39 * Modifications:
 40 * --------------------------------------------------------------------------
 41 * Date     Name        Description of modification
 42 * -------  ----------  -----------------------------------------------------
 43 * 16 Aug   Hogue       Added PointerPtr typedef * vector allocators
 44 * 
 45 * $Log: corematx.h,v $
 46 * Revision 6.0  1997/08/25 18:10:33  madden
 47 * Revision changed to 6.0
 48 *
 49 * Revision 5.0  1996/05/28 14:02:09  ostell
 50 * Set to revision 5.0
 51 *
 52  * Revision 1.3  1995/08/28  19:31:53  kans
 53  * version 4.1
 54  *
 55  * Revision 1.2  1995/08/03  21:44:33  kans
 56  * changes
 57  *
 58  * Revision 1.1  1995/08/02  17:07:15  kans
 59  * Initial revision
 60  *
 61 *
 62 * ==========================================================================
 63 */
 64 
 65 
 66 typedef FloatHiPtr *FloatHiPtrPtr;
 67 typedef FloatLoPtr *FloatLoPtrPtr;
 68 typedef Int2Ptr *Int2PtrPtr;
 69 typedef Int4Ptr *Int4PtrPtr;
 70 typedef FloatLoPtr **FloatLoPtrPtrPtr;
 71 typedef Pointer *PointerPtr;
 72 
 73 /* To use NUMERICAL RECIPIES IN C wrapper functions */
 74 /* set the compiler define NRTONCBI */
 75 #ifndef _COREMATX_
 76 #define _COREMATX_
 77 
 78 #ifdef __cplusplus
 79 extern "C" {
 80 #endif
 81 
 82 /* function prototypes here */
 83 FloatHiPtr LIBCALL FHVector  (Int4 nl, Int4 nh);
 84 FloatLoPtr LIBCALL FLVector (Int4 nl, Int4 nh);
 85 Int2Ptr  LIBCALL I2Vector  (Int4 nl, Int4 nh);
 86 Int4Ptr  LIBCALL I4Vector (Int4 nl, Int4 nh);
 87 UcharPtr LIBCALL UCVector (Int4 nl, Int4 nh);
 88 Uint4Ptr LIBCALL UI4Vector (Int4 nl, Int4 nh);
 89 PointerPtr LIBCALL PTRVector(Int4 nl, Int4 nh);
 90 void LIBCALL FHVectorFree (FloatHiPtr v, Int4 nl);
 91 void LIBCALL FLVectorFree (FloatLoPtr v,  Int4 nl);
 92 void LIBCALL I2VectorFree (Int2Ptr v,  Int4 nl);
 93 void LIBCALL I4VectorFree (Int4Ptr v,  Int4 nl);
 94 void LIBCALL UCVectorFree (UcharPtr v,  Int4 nl);
 95 void LIBCALL UI4VectorFree (Uint4Ptr v,  Int4 nl);
 96 void LIBCALL PTRVectorFree(PointerPtr v,  Int4 nl);
 97 
 98 
 99 
100 
101 FloatHiPtrPtr LIBCALL FHMatrix (Int4 nrl, Int4 nrh,  Int4 ncl,  Int4 nch);
102 FloatLoPtrPtr LIBCALL FLMatrix  (Int4 nrl, Int4 nrh,  Int4 ncl,  Int4 nch);
103 Int2PtrPtr LIBCALL I2Matrix (Int4 nrl, Int4 nrh,  Int4 ncl,  Int4 nch);
104 Int4PtrPtr LIBCALL I4Matrix (Int4 nrl, Int4 nrh,  Int4 ncl,  Int4 nch);
105 void LIBCALL FLMatrixFree (FloatLoPtr *m,  Int4 nrl, Int4 ncl);
106 void LIBCALL FHMatrixFree (FloatHiPtr *m,  Int4 nrl, Int4 ncl);
107 void LIBCALL I2MatrixFree (Int2Ptr *m,  Int4 nrl, Int4 ncl);
108 void LIBCALL I4MatrixFree (Int4Ptr *m,  Int4 nrl, Int4 ncl);
109 
110 FloatLoPtrPtr LIBCALL FLSubmatrix (FloatLoPtr *a,  Int4 oldrl,  Int4 oldrh, 
111                 Int4 oldcl,  Int4 oldch,  Int4 newrl,  Int4 newcl);
112 void LIBCALL FLSubmatrixFree (FloatLoPtr *b,  Int4 nrl);
113 
114 FloatHiPtrPtr  LIBCALL FHConvtMatrix (FloatHiPtr a, Int4 nrl,  Int4 nrh,  Int4 ncl,  
115                             Int4 nch);
116 FloatLoPtrPtr  LIBCALL FLConvtMatrix (FloatLoPtr a, Int4 nrl,  Int4 nrh,  Int4 ncl,  
117                             Int4 nch);
118 Int2PtrPtr  LIBCALL I2ConvtMatrix (Int2Ptr a, Int4 nrl,  Int4 nrh,  Int4 ncl,  
119                             Int4 nch);
120 Int4PtrPtr  LIBCALL I4ConvtMatrix (Int4Ptr a, Int4 nrl,  Int4 nrh,  Int4 ncl,  
121                             Int4 nch);
122 void LIBCALL FHConvtFree (FloatHiPtr *b, Int4 nrl);
123 void LIBCALL FLConvtFree (FloatLoPtr *b, Int4 nrl);
124 void LIBCALL I2ConvtFree (Int2Ptr *b, Int4 nrl);
125 void LIBCALL I4ConvtFree (Int4Ptr *b, Int4 nrl);
126 
127 FloatLoPtrPtrPtr LIBCALL FL3Matrix (Int4 nrl,  Int4 nrh,  Int4 ncl,  Int4 nch,  Int4 ndl, 
128 Int4 ndh);
129 void LIBCALL FL3MatrixFree (FloatLoPtr **b, Int4 nrl, Int4 ncl, Int4 ndl);
130 
131 /* Numerical Recipies in C "Wrappers" */
132 #ifdef NRTONCBI
133 void nrerror (char error_text[]);
134 FloatLoPtr vector (Int4 nl, Int4 nh);
135 Int4Ptr ivector (Int4 nl, Int4 nh);
136 FloatHiPtr dvector (Int4 nl, Int4 nh);
137 UcharPtr cvector (Int4 nl,  Int4 nh);
138 Uint4Ptr lvector (Int4 nl,  Int4 nh);
139 FloatLoPtr *matrix (Int4 nrl, Int4 nrh,  Int4 ncl,  Int4 nch);
140 FloatHiPtr *dmatrix (Int4 nrl, Int4 nrh,  Int4 ncl,  Int4 nch);
141 Int4Ptr *imatrix (Int4 nrl, Int4 nrh,  Int4 ncl,  Int4 nch);
142 void free_dvector (FloaHiPtr v, Int4 nl,  Int4 nh);
143 void free_vector (FloatLoPtr v,  Int4 nl,  Int4 nh);
144 void free_cvector (UcharPtr v,  Int4 nl,  Int4 nh);
145 void free_lvector (Uint4Ptr v,  Int4 nl,  Int4 nh);
146 void free_ivector (Int4Ptr v,  Int4 nl,  Int4 nh);
147 void free_imatrix (Int4Ptr *m,  Int4 nrl, Int4 nrh,  Int4 ncl,  Int4 nch);
148 void free_matrix (FloatLoPtr *m,  Int4 nrl, Int4 nrh,  Int4 ncl,  Int4 nch);
149 void free_dmatrix (FloatHiPtr *m,  Int4 nrl, Int4 nrh,  Int4 ncl,  Int4 nch);
150 FloatLoPtr convert_matrix (FloatLoPtr a, Int4 nrl,  Int4 nrh,  Int4 ncl,  
151                             Int2 nch);
152 void free_convert_matrix (FloatLoPtr *b,  Int4 nrl,  Int4 nrh,  Int4 ncl,
153                           Int4 nch);
154 FloatLoPtr *submatrix (FloatLoPtr *a,  Int4 oldrl,  Int4 oldrh, 
155                 Int4 oldcl,  Int4 oldch,  Int4 newrl,  Int4 newcl);
156 void free_submatrix (FloatLoPtr *b,  Int4 nrl,  Int4 nrh, 
157                 Int4 ncl,  Int4 nch);
158 FloatLoPtr **f3tensor (Int4 nrl,  Int4 nrh,  Int4 ncl,  Int4 nch,  Int4 ndl,  
159                        Int4 ndh);
160 void free_f3tensor (FloatLoPtr **t,  Int4 nrl,  Int4 nrh,  Int4 ncl,  Int4 nch, 
161                     Int4 ndl,  Int4 ndh);
162 
163 #endif
164 
165 #ifdef __cplusplus
166 }
167 #endif
168 
169 
170 #endif
171 
172 

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.