diff options
Diffstat (limited to 'src/misc/vec')
-rw-r--r-- | src/misc/vec/vecMem.h | 8 | ||||
-rw-r--r-- | src/misc/vec/vecSet.h | 14 |
2 files changed, 22 insertions, 0 deletions
diff --git a/src/misc/vec/vecMem.h b/src/misc/vec/vecMem.h index c4868807..72b653b7 100644 --- a/src/misc/vec/vecMem.h +++ b/src/misc/vec/vecMem.h @@ -84,6 +84,14 @@ struct Vec_Mem_t_ SeeAlso [] ***********************************************************************/ +static inline void Vec_MemAlloc_( Vec_Mem_t * p, int nEntrySize, int LogPageSze ) +{ + memset( p, 0, sizeof(Vec_Mem_t) ); + p->nEntrySize = nEntrySize; + p->LogPageSze = LogPageSze; + p->PageMask = (1 << p->LogPageSze) - 1; + p->iPage = -1; +} static inline Vec_Mem_t * Vec_MemAlloc( int nEntrySize, int LogPageSze ) { Vec_Mem_t * p; diff --git a/src/misc/vec/vecSet.h b/src/misc/vec/vecSet.h index 40318b48..ac3dd95c 100644 --- a/src/misc/vec/vecSet.h +++ b/src/misc/vec/vecSet.h @@ -242,6 +242,20 @@ static inline int Vec_SetAppendS( Vec_Set_t * p, int nSize ) Vec_SetIncLimitS( p->pPages[p->iPageS], nWords ); return Vec_SetHandCurrentS(p) - nWords; } +static inline int Vec_SetFetchH( Vec_Set_t * p, int nBytes ) +{ + return Vec_SetAppend(p, NULL, (nBytes + 3) >> 2); +} +static inline void * Vec_SetFetch( Vec_Set_t * p, int nBytes ) +{ + return (void *)Vec_SetEntry( p, Vec_SetFetchH(p, nBytes) ); +} +static inline char * Vec_SetStrsav( Vec_Set_t * p, char * pName ) +{ + char * pStr = (char *)Vec_SetFetch( p, strlen(pName) + 1 ); + strcpy( pStr, pName ); + return pStr; +} /**Function************************************************************* |