libcm is a C development framework with an emphasis on audio signal processing applications.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

cmStrStream.h 1.2KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. #ifndef cmStrStream_h
  2. #define cmStrStream_h
  3. #ifdef __cplusplus
  4. extern "C" {
  5. #endif
  6. //( { file_desc:"String stream text sink." kw:[text] }
  7. enum
  8. {
  9. kOkSsRC = cmOkRC,
  10. kLHeapMemFailSsRC
  11. };
  12. typedef cmHandle_t cmStrStreamH_t;
  13. typedef cmRC_t cmSsRC_t;
  14. extern cmStrStreamH_t cmStrStreamNullHandle;
  15. // If 'dfltBlkByteCnt' 'is set to 0 then the dfltBlkByteCnt is internally set to 4096.
  16. cmSsRC_t cmOStrStreamCreate( cmCtx_t* ctx, cmStrStreamH_t* hp, unsigned dfltBlkByteCnt );
  17. cmSsRC_t cmOStrStreamDestroy( cmStrStreamH_t* hp );
  18. bool cmOStrStreamIsValid( cmStrStreamH_t h );
  19. cmSsRC_t cmOStrStreamWrite( cmStrStreamH_t h, const void* dp, unsigned byteCnt );
  20. cmSsRC_t cmOStrStreamWriteStr( cmStrStreamH_t h, const cmChar_t* str );
  21. cmSsRC_t cmOStrStreamWriteStrN( cmStrStreamH_t h, const cmChar_t* str, unsigned n );
  22. cmSsRC_t cmOStrStreamVPrintf( cmStrStreamH_t h, const cmChar_t* fmt, va_list vl );
  23. cmSsRC_t cmOStrStreamPrintf( cmStrStreamH_t h, const cmChar_t* fmt, ... );
  24. unsigned cmOStrStreamByteCount( cmStrStreamH_t h );
  25. void* cmOStrStreamAllocBuf( cmStrStreamH_t h );
  26. cmChar_t* cmOStrStreamAllocText( cmStrStreamH_t h );
  27. //)
  28. #ifdef __cplusplus
  29. }
  30. #endif
  31. #endif