FLCBYTBF-API FLUC C++ Stream Buffer Interface

FLMDEF.h
Go to the documentation of this file.
1
13#ifdef __cplusplus
14 extern "C" {
15#endif
16
17#ifndef INC_FLMDEF_H
18#define INC_FLMDEF_H
21/**********************************************************************/
22
32#define FLMOUT_FORMAT_NON 0
33#define FLMOUT_FORMAT_LST 1
34#define FLMOUT_FORMAT_XML 2
46#define FLC_READ_FILE 1
47#define FLC_READ_FORMAT 2
48#define FLC_WRITE_FILE 3
49#define FLC_WRITE_FORMAT 4
50#define FLC_CONV_READ 5
51#define FLC_CONV_WRITE 6
52#define FLC_CONV_FROM_TO 7
53#define FLC_INPUT_FILE 8
54#define FLC_OUTPUT_FILE 9
55#define FLC_INFO 10
56#define FLC_STATE 11
57#define FLC_LOG 12
67#define FLCHSH_ALGO_NON 0U
68#define FLCHSH_ALGO_MD5 1U
69#define FLCHSH_ALGO_RMD128 2U
70#define FLCHSH_ALGO_RMD160 3U
71#define FLCHSH_ALGO_SHA1 10U
72#define FLCHSH_ALGO_SHA160 10U
73#define FLCHSH_ALGO_SHA224 20U
74#define FLCHSH_ALGO_SHA256 21U
75#define FLCHSH_ALGO_SHA384 22U
76#define FLCHSH_ALGO_SHA512 23U
77#define FLCHSH_ALGO_SHA3_224 30U
78#define FLCHSH_ALGO_SHA3_256 31U
79#define FLCHSH_ALGO_SHA3_384 32U
80#define FLCHSH_ALGO_SHA3_512 33U
81#define FLCHSH_ALGO_CRC08 100U
82#define FLCHSH_ALGO_CRC16 101U
83#define FLCHSH_ALGO_CRC24 102U
84#define FLCHSH_ALGO_CRC32 103U
85#define FLCHSH_ALGO_CRC32C 104U
86#define FLCHSH_ALGO_CRC40 105U
87#define FLCHSH_ALGO_CRC64 106U
98#define FLCMAC_ALGO_NON 0U
99#define FLCMAC_ALGO_HMAC 1U
108#define FLC_INBOUND_COUNT 1
109#define FLC_OUTBOUND_COUNT 2
110#define FLC_FIO_COUNT 1
111#define FLC_FMT_COUNT 2
112#define FLC_BYTE_COUNT 1
113#define FLC_UNIT_COUNT 2
129#define FLMMAT_TYP_NON 0x00
130#define FLMMAT_TYP_DATBLK 0x80
131#define FLMMAT_TYP_STDREC 0x81
132#define FLMMAT_TYP_STDASAREC 0x82
133#define FLMMAT_TYP_STDMCCREC 0x83
134#define FLMMAT_TYP_RELREC 0x84
135#define FLMMAT_TYP_RELASAREC 0x85
136#define FLMMAT_TYP_RELMCCREC 0x86
137#define FLMMAT_TYP_TXTREC 0x87
138#define FLMMAT_TYP_TXTDLM 0x88
139#define FLMMAT_TYP_TXTRST 0x90
140#define FLMMAT_TYP_XMLELM 0x91
141#define FLMMAT_TYP_TABELM 0x92
145#define FLMELM_VALID(m,t) ( (((m)>=0x80 && (m)<=0x88) && ((t)==0 )) || \
146 (((m)==0x90 ) && ((t)>=0 && t<= 1)) || \
147 (((m)==0x91 ) && ((t)>=0 && t<=23)) )
148#define FLMELM_INVALID(m,t) (!FLMELM_VALID((m),(t)))
149#define FLMATRLEN_VALID(m,t,l) ( (((m)==0x80 || (m)==0x81 || (m)==0x87 || (m)==0x88 || (m)==0x90 || (m)==0x91) && (l)==0) || \
150 (((m)==0x82 || (m)==0x83 ) && (l)==1) || \
151 (((m)==0x84 ) && (l)==8) || \
152 (((m)==0x85 || (m)==0x86 ) && (l)==9) )
153#define FLMATRLEN_INVALID(m,t,l) (!FLMATRLEN_VALID((m),(t),(l)))
208#define FLMELM_NOSKIP -1
209
214#define FLMELM_TYPBLK_STANDARD 0
215
220#define FLMELM_TYPREC_STANDARD 0
221
226#define FLMELM_TYPTXT_RECORD 0
231#define FLMELM_TYPTXT_REST 1
232
248#define FLMELM_TYPXML_DATA 0
261#define FLMELM_TYPXML_STARTELM 1
270#define FLMELM_TYPXML_ENDSTRTELM 2
281#define FLMELM_TYPXML_ENDELM 3
294#define FLMELM_TYPXML_ATTNAME 4
305#define FLMELM_TYPXML_ATTRVAL 5
324#define FLMELM_TYPXML_XML 6
325
340#define FLMELM_TYPXML_SKIPENT 7
356#define FLMELM_TYPXML_SKIPPARMENT 8
386#define FLMELM_TYPXML_STARTDTD 9
395#define FLMELM_TYPXML_ENDDTD 10
415#define FLMELM_TYPXML_ELMDECL 11
443#define FLMELM_TYPXML_ATTLDECL 12
472#define FLMELM_TYPXML_INTENTDECL 13
505#define FLMELM_TYPXML_SYSENTDECL 14
539#define FLMELM_TYPXML_PUBENTDECL 15
564#define FLMELM_TYPXML_NOTDECLS 16
589#define FLMELM_TYPXML_NOTDECLP 17
615#define FLMELM_TYPXML_NOTDECLPS 18
633#define FLMELM_TYPXML_PROCINST 19
651#define FLMELM_TYPXML_STARTCD 20
663#define FLMELM_TYPXML_ENDCD 21
673#define FLMELM_TYPXML_COMMENT 22
682#define FLMELM_TYPXML_DEFAULT 23
683
692#define FLMELM_TYPXML_STARTNS 24
693
701#define FLMELM_TYPXML_ENDNS 25
702
704#define FLMELM_XMLMAX_TYPCNT 26 // to define type and pot tables big enough (must be one more than last element typ)
705#define FLMELM_FLAG_LITCACHE 0x00000001U // marks element that literal cache are used (pcDat points into literal cache)
706#define setFLMELM_LITCACHE(f) ((f)|FLMELM_FLAG_LITCACHE)
707#define isFLMELM_LITCACHE(f) ((f)&FLMELM_FLAG_LITCACHE)
708
722#define FLMELM_TYPTAB_NONE 0
723
732#define FLMELM_TYPTAB_FLAG_NULLID 0x00010000
733
743#define FLMELM_TYPTAB_FLAG_EMPTID 0x00020000
744
753#define FLMELM_TYPTAB_BINARY 0x00000001
754#define FLMELM_TYPTAB_BINARY_NI (FLMELM_TYPTAB_BINARY | FLMELM_TYPTAB_FLAG_NULLID)
755#define FLMELM_TYPTAB_BINARY_EI (FLMELM_TYPTAB_BINARY | FLMELM_TYPTAB_FLAG_EMPTID)
756#define FLMELM_TYPTAB_BINARY_EINI (FLMELM_TYPTAB_BINARY | FLMELM_TYPTAB_FLAG_EMPTID | FLMELM_TYPTAB_FLAG_NULLID)
757
766#define FLMELM_TYPTAB_STRING 0x00000002
767#define FLMELM_TYPTAB_STRING_NI (FLMELM_TYPTAB_STRING | FLMELM_TYPTAB_FLAG_NULLID)
768#define FLMELM_TYPTAB_STRING_EI (FLMELM_TYPTAB_STRING | FLMELM_TYPTAB_FLAG_EMPTID)
769#define FLMELM_TYPTAB_STRING_EINI (FLMELM_TYPTAB_STRING | FLMELM_TYPTAB_FLAG_EMPTID | FLMELM_TYPTAB_FLAG_NULLID)
770
780#define FLMELM_TYPTAB_INTEGER 0x00000003
781#define FLMELM_TYPTAB_INTEGER_NI (FLMELM_TYPTAB_INTEGER | FLMELM_TYPTAB_FLAG_NULLID)
782#define FLMELM_TYPTAB_INTEGER_EI (FLMELM_TYPTAB_INTEGER | FLMELM_TYPTAB_FLAG_EMPTID)
783#define FLMELM_TYPTAB_INTEGER_EINI (FLMELM_TYPTAB_INTEGER | FLMELM_TYPTAB_FLAG_EMPTID | FLMELM_TYPTAB_FLAG_NULLID)
784
793#define FLMELM_TYPTAB_FLOAT 0x00000004
794#define FLMELM_TYPTAB_FLOAT_NI (FLMELM_TYPTAB_FLOAT | FLMELM_TYPTAB_FLAG_NULLID)
795#define FLMELM_TYPTAB_FLOAT_EI (FLMELM_TYPTAB_FLOAT | FLMELM_TYPTAB_FLAG_EMPTID)
796#define FLMELM_TYPTAB_FLOAT_EINI (FLMELM_TYPTAB_FLOAT | FLMELM_TYPTAB_FLAG_EMPTID | FLMELM_TYPTAB_FLAG_NULLID)
797
809#define FLMELM_TYPTAB_HEADER 0x0000000A
810
811/**********************************************************************/
836 typedef struct {
838 int version;
845 int matTyp;
851 int elmTyp;
853 int atrLen;
855 int datLen;
857 int hshLen;
859 int reserved1;
861 int reserved2;
863 char buffer[4];
879} FlmElmRec0;
880
892#define FLMELMREC0_LENGTH(element) ((size_t)32+(size_t)((element)->atrLen)+(size_t)((element)->datLen)+(size_t)((element)->hshLen))
893
898#define FLMELMREC0_ATTRPTR(element) ((element)->buffer)
899
904#define FLMELMREC0_DATAPTR(element) (FLMELMREC0_ATTRPTR(element)+(element)->atrLen)
905
910#define FLMELMREC0_HASHPTR(element) (FLMELMREC0_DATAPTR(element)+(element)->datLen)
911
913/**********************************************************************/
914
916#endif /* INC_FLMDEF_H */
917
918#ifdef __cplusplus
919 }
920#endif
FlmElmRec0
FLAM 5 serialized element structure (version 0)
Definition: FLMDEF.h:836
FlmElmRec0::datLen
int datLen
Element data length (at offset 32 + atrLen)
Definition: FLMDEF.h:855
FlmElmRec0::reserved2
int reserved2
Definition: FLMDEF.h:861
FlmElmRec0::elmTyp
int elmTyp
Element type.
Definition: FLMDEF.h:851
FlmElmRec0::matTyp
int matTyp
Matrix type (type of data format)
Definition: FLMDEF.h:845
FlmElmRec0::hshLen
int hshLen
Hash data length (at offset 32 + atrLen + datLen)
Definition: FLMDEF.h:857
FlmElmRec0::atrLen
int atrLen
Attribute data length (at offset 32)
Definition: FLMDEF.h:853
FlmElmRec0::reserved1
int reserved1
Definition: FLMDEF.h:859
FlmElmRec0::version
int version
Element structure version (must be 0)
Definition: FLMDEF.h:838