Back to home page

Enduro/X

 
 

    


0001 /**
0002  * @brief FML emulation via UBF library
0003  *
0004  * @file fml.h
0005  */
0006 /* -----------------------------------------------------------------------------
0007  * Enduro/X Middleware Platform for Distributed Transaction Processing
0008  * Copyright (C) 2009-2016, ATR Baltic, Ltd. All Rights Reserved.
0009  * Copyright (C) 2017-2023, Mavimax, Ltd. All Rights Reserved.
0010  * This software is released under one of the following licenses:
0011  * AGPL (with Java and Go exceptions) or Mavimax's license for commercial use.
0012  * See LICENSE file for full text.
0013  * -----------------------------------------------------------------------------
0014  * AGPL license:
0015  *
0016  * This program is free software; you can redistribute it and/or modify it under
0017  * the terms of the GNU Affero General Public License, version 3 as published
0018  * by the Free Software Foundation;
0019  *
0020  * This program is distributed in the hope that it will be useful, but WITHOUT ANY
0021  * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
0022  * PARTICULAR PURPOSE. See the GNU Affero General Public License, version 3
0023  * for more details.
0024  *
0025  * You should have received a copy of the GNU Affero General Public License along 
0026  * with this program; if not, write to the Free Software Foundation, Inc.,
0027  * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
0028  *
0029  * -----------------------------------------------------------------------------
0030  * A commercial use license is available from Mavimax, Ltd
0031  * contact@mavimax.com
0032  * -----------------------------------------------------------------------------
0033  */
0034 
0035 #ifndef FML_H
0036 #define FML_H
0037 
0038 #ifdef  __cplusplus
0039 extern "C" {
0040 #endif
0041 
0042 /*---------------------------Includes-----------------------------------*/
0043 #include <ubf.h>
0044 /*---------------------------Externs------------------------------------*/
0045 /*---------------------------Macros-------------------------------------*/
0046     
0047 #define MAXFBLEN MAXUBFLEN
0048 
0049 
0050 /* fixes for Support #519 shared section, include once: */
0051 #ifndef FML32_H
0052     
0053     
0054 #define FVIEWNAMESIZE NDRX_VIEW_NAME_LEN
0055 #define FVIEWFLD    BVIEWFLD
0056 
0057 #define F_LENGTH BF_LENGTH
0058 #define FLD_MIN BFLD_MIN
0059 #define FLD_SHORT BFLD_SHORT
0060 #define FLD_LONG BFLD_LONG
0061 #define FLD_CHAR BFLD_CHAR
0062 #define FLD_FLOAT BFLD_FLOAT
0063 #define FLD_DOUBLE BFLD_DOUBLE
0064 #define FLD_STRING BFLD_STRING
0065 #define FLD_CARRAY BFLD_CARRAY
0066 #define FLD_MAX BFLD_MAX
0067 #define FLD_PTR         BFLD_PTR    /**< pointer to a buffer            */
0068 #define FLD_FML         BFLD_UBF    /**< embedded FML buffer          */
0069 #define FLD_VIEW        BFLD_VIEW   /**< embedded VIEW buffer         */
0070 
0071 #define BADFLDID BBADFLDID
0072 #define FIRSTFLDID BFIRSTFLDID
0073 
0074 #define FSTDXINT  16
0075     
0076 /* compatibility for error codes */
0077 #define FMINVAL BMINVAL
0078 #define FALIGNERR BALIGNERR
0079 #define FNOTFLD BNOTFLD
0080 #define FNOSPACE BNOSPACE
0081 #define FNOTPRES BNOTPRES
0082 #define FBADFLD BBADFLD
0083 #define FTYPERR BTYPERR
0084 #define FEUNIX BEUNIX
0085 #define FBADNAME BBADNAME
0086 #define FMALLOC BMALLOC
0087 #define FSYNTAX BSYNTAX
0088 #define FFTOPEN BFTOPEN
0089 #define FFTSYNTAX BFTSYNTAX
0090 #define FEINVAL BEINVAL
0091 #define FBADTBL BBADTBL
0092 #define FBADVIEW BBADVIEW
0093 #define FVFSYNTAX BVFSYNTAX
0094 #define FVFOPEN BVFOPEN
0095 #define FBADACM BBADACM
0096 #define FNOCNAME BNOCNAME
0097 #define FEBADOP BEBADOP
0098 #define FMAXVAL  BMAXVAL
0099     
0100 #define F_FTOS B_FTOS
0101 #define F_STOF B_STOF
0102 #define F_OFF B_OFF
0103 #define F_BOTH B_BOTH
0104     
0105 #define Fnext_state Bnext_state 
0106 #define Fnext_state_t Bnext_state_t
0107 
0108 /* Added for compatibility */
0109 #define F32to16 B32to16
0110 #define F16to32 B16to32
0111 
0112 /* end of shared once */
0113 #endif
0114 
0115 /* capability for functions 16 bit compat: */
0116 #define MAXFBLEN MAXUBFLEN
0117 #define Fbfr Ubfh
0118 #define FBFR UBFH
0119 #define Ferror Berror
0120 #define FLDID BFLDID
0121 #define FLDLEN BFLDLEN
0122 #define FLDOCC BFLDOCC
0123 
0124 #define Fread Bread
0125 #define Fwrite Bwrite
0126 #define Fjoin Bjoin
0127 #define Fojoin Bojoin
0128 #define Flen Blen
0129 #define CFfind CBfind
0130 #define CFfindocc CBfindocc
0131 #define CFgetalloc CBgetalloc
0132 #define Fboolpr Bboolpr
0133 #define Fextread Bextread
0134 #define Ffindocc Bfindocc
0135 #define Fgetalloc Bgetalloc
0136 #define Ffindlast Bfindlast
0137 #define Fgetlast Bgetlast
0138 #define Fprint Bprint
0139 #define Ffprint Bfprint
0140 #define Ftypcvt Btypcvt
0141 #define Fadds Badds
0142 #define Fchgs Bchgs
0143 #define Fgets Bgets
0144 #define Fgetsa Bgetsa
0145 #define Ffinds Bfinds
0146 #define CFadd CBadd
0147 #define CFchg CBchg
0148 #define CFget CBget
0149 #define Fdel Bdel
0150 #define Fpres Bpres
0151 #define Fproj Bproj
0152 #define Fprojcpy Bprojcpy
0153 #define Fldid Bfldid
0154 #define Fname Bfname
0155 #define Fcpy Bcpy
0156 #define Fchg ndrx_Fchg
0157 #define Finit Binit
0158 #define Fnext Bnext
0159 #define Fget Bget
0160 #define Fboolco Bboolco
0161 #define Ffind Bfind
0162 #define Fboolev Bboolev
0163 #define Ffloatev Bfloatev
0164 #define Fadd ndrx_Fadd
0165 #define F_error B_error
0166 #define Fstrerror Bstrerror
0167 #define Fmkfldid Bmkfldid
0168 #define Foccur Boccur
0169 #define Fused Bused
0170 #define Fldtype Bfldtype
0171 #define Fdelall Bdelall
0172 #define Fdelete Bdelete
0173 #define Fldno Bfldno
0174 #define Funused Bunused
0175 #define Fsizeof Bsizeof
0176 #define Ftype Btype
0177 #define Ffree Bfree
0178 #define Falloc Balloc
0179 #define Frealloc Brealloc
0180 #define Fupdate Bupdate
0181 #define Fconcat Bconcat
0182 #define Ftreefree Btreefree
0183 #define Findex Bindex
0184 #define Funindex Bunindex
0185 #define Fidxused Bidxused
0186 #define Frstrindex Brstrindex
0187 #define Ferror Berror
0188 #define Fielded Bisubf
0189 #define Fcmp Bcmp
0190 #define Fsubset Bsubset
0191 #define Fnum Bnum 
0192 #define Fneeded Bneeded
0193 
0194 /* VIEW related */
0195 #define Fvnull Bvnull
0196 #define Fvselinit Bvselinit
0197 #define Fvsinit Bvsinit
0198 #define Fvrefresh Bvrefresh
0199 #define Fvopt Bvopt
0200 #define Fvftos Bvftos
0201 #define Bvstof Bvstof
0202 /* VIEW related, END */
0203     
0204 /*---------------------------Enums--------------------------------------*/
0205 /*---------------------------Typedefs-----------------------------------*/
0206 /*---------------------------Globals------------------------------------*/
0207 /*---------------------------Statics------------------------------------*/
0208 /*---------------------------Prototypes---------------------------------*/
0209 
0210 #ifdef  __cplusplus
0211 }
0212 #endif
0213 
0214 #endif  /* FML_H */
0215 
0216 /* vim: set ts=4 sw=4 et smartindent: */