From: cherierm Date: Tue, 19 Dec 2006 16:09:12 +0000 (+0000) Subject: Buffer type declaration X-Git-Tag: v3.3~2361 X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/commitdiff_plain/e7c4935b3e19e0d8835009ce154447cdf7826050 Buffer type declaration git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@2998 48e7efb5-ca39-0410-a469-dd3cf9ba447f --- diff --git a/win32_test_app/include/TBuffer.h b/win32_test_app/include/TBuffer.h new file mode 100644 index 0000000000..a7262c45be --- /dev/null +++ b/win32_test_app/include/TBuffer.h @@ -0,0 +1,61 @@ +#ifndef __BUFFER_H__ +#define __BUFFER_H__ + +#include +#include +#include + +/* struct s_Buffer declaration. */ +typedef struct s_Buffer +{ + char* data; /* the buffer data. */ + size_t size; /* the buffer size (in bytes). */ + size_t capacity; /* the buffer capacity (in bytes). */ +}s_Buffer_t,* Buffer_t; + +/* Asserts that a s_Buffer is valid. */ +#define ASSERT_VALID_Buffer(p) ( ASSERT_NOT_NULL((p)) /*&& ASSERT_NOT_NULL((p)->data)*/ ) + +/* The default buffer capacity (512 bytes). */ +#define DEFAULT_Buffer_CAPACITY ((size_t)512) + +/* struct s_buffet connected functions. */ + +/* Constructs an new buffer. + * If successful, the function returns a pointer to + * the new buffer. Otherwise, the function returns + * NULL. + */ +Buffer_t Buffer_new(void); + +/* Clears the buffer (this function don't destroy it, + * see Buffer_free function). + */ +void Buffer_clear(Buffer_t buffer); + +/* Appends a string in the buffer. If successful, + * the function returns true. Otherwise the function + * returns false. + */ +bool Buffer_append(Buffer_t buffer,char* str); + +/* + * Removes all the linefeed from the buffer. + */ +void Buffer_chomp(Buffer_t buffer); + +/* + * Destroy the buffer. + */ +void Buffer_free(Buffer_t buffer); + +/* + * This function returns true is the buffer is empty. + * Otherwrise the function returns false. + */ +bool Buffer_empty(Buffer_t buffer); + + + + +#endif /* #ifndef __BUFFER_H__ */ \ No newline at end of file