#ifndef cmStrStream_h #define cmStrStream_h #ifdef __cplusplus extern "C" { #endif enum { kOkSsRC = cmOkRC, kLHeapMemFailSsRC }; typedef cmHandle_t cmStrStreamH_t; typedef cmRC_t cmSsRC_t; extern cmStrStreamH_t cmStrStreamNullHandle; // If 'dfltBlkByteCnt' 'is set to 0 then the dfltBlkByteCnt is internally set to 4096. cmSsRC_t cmOStrStreamCreate( cmCtx_t* ctx, cmStrStreamH_t* hp, unsigned dfltBlkByteCnt ); cmSsRC_t cmOStrStreamDestroy( cmStrStreamH_t* hp ); bool cmOStrStreamIsValid( cmStrStreamH_t h ); cmSsRC_t cmOStrStreamWrite( cmStrStreamH_t h, const void* dp, unsigned byteCnt ); cmSsRC_t cmOStrStreamWriteStr( cmStrStreamH_t h, const cmChar_t* str ); cmSsRC_t cmOStrStreamWriteStrN( cmStrStreamH_t h, const cmChar_t* str, unsigned n ); cmSsRC_t cmOStrStreamVPrintf( cmStrStreamH_t h, const cmChar_t* fmt, va_list vl ); cmSsRC_t cmOStrStreamPrintf( cmStrStreamH_t h, const cmChar_t* fmt, ... ); unsigned cmOStrStreamByteCount( cmStrStreamH_t h ); void* cmOStrStreamAllocBuf( cmStrStreamH_t h ); cmChar_t* cmOStrStreamAllocText( cmStrStreamH_t h ); #ifdef __cplusplus } #endif #endif