37#define DASENC_VALID 0x0001
45typedef struct das_codec {
59 const char* sSemantic;
79 char sOutFmt[DASENC_FMT_LEN];
87#define DASENC_VARSZOUT -1
88#define DASENC_READ true
89#define DASENC_WRITE false
91#define DASENC_ITEM_TERM -9
94#define DASENC_ITEM_LEN -1
101#define DasCodec_isValid(pCd) (((pCd)->uProc & DASENC_VALID)==(DASENC_VALID))
165 const char* sEncType, int16_t uSzEach, ubyte cSep,
das_units epoch,
213 bool bRead,
DasCodec* pThis,
const char* sEncType, int16_t uSzEach,
214 ubyte cSep,
das_units epoch,
const char* sOutFmt
220DAS_API
void DasCodec_eatSpace(
DasCodec* pThis,
bool bEat);
230DAS_API
void DasCodec_setTrim(
DasCodec* pThis,
bool bTrim);
236DAS_API
bool DasCodec_isTrim(
const DasCodec* pThis);
267DAS_API
DasErrCode DasCodec_setIdxTerms(
DasCodec* pThis, ubyte nLevels,
const char* sLevels);
273DAS_API
bool DasCodec_isReader(
const DasCodec* pThis);
282DAS_API
bool DasCodec_isText(
const DasCodec* pThis);
317DAS_API
int DasCodec_decode(
318 DasCodec* pThis,
const ubyte* pBuf,
int nBufLen,
int nExpect,
int* pValsRead
332DAS_API
int DasCodec_raggedIndices(
const DasCodec* pThis,
int* aRagIdx);
355DAS_API
int DasCodec_decodeRuns(
356 DasCodec* pThis,
const ubyte* pBuf,
int nBufLen,
bool bLastVar,
int* pValsRead
359#define DASENC_PKT_LAST 0x02
360#define DASENC_IN_HDR 0x04
402 DasCodec* pThis,
DasBuf* pBuf,
int nDim, ptrdiff_t* pLoc,
int nExpect,
418DAS_API
int DasCodec_encodeRuns(
DasCodec* pThis,
DasBuf* pBuf, ptrdiff_t iRec);
424DAS_API
void DasCodec_deInit(
DasCodec* pThis);
A dynamic buffer with multi-dimensional array style access.
Utility to assist with encode and decode operations.
Defines storage and access methods for values in a das stream.
#define VARIDX_MAX
Max index count for the model.
Definition generator.h:55
DAS_API int DasCodec_encode(DasCodec *pThis, DasBuf *pBuf, int nDim, ptrdiff_t *pLoc, int nExpect, uint32_t uFlags)
Write values from an array into a buffer, does not change the array.
int DasErrCode
return code type 0 indicates success, negative integer indicates failure
Definition defs.h:184
const char * das_units
Handle SI and other units, with accommodations for Epoch systems, from units.h.
Definition units.h:144
das_val_type
Enumeration of types stored in Das Array (DasAry) objects from value.h.
Definition value.h:81
Dynamic recursive ragged arrays.
Definition array.h:271
Buffer class to handle accumulating byte streams.
Definition buffer.h:47
Reading and writing array data to buffers.
Definition codec.h:45
A generic value type for use in arrays, datums and variables.