The Pubnub C-core library. It's home is on https://github.com/pubnub/c_core, this is a copy

Dependents:   Pubnub_c_core_mbed2_pal Pubnub_c_core_mbed2_pal Pubnub_c_core_mbed2_pal2

Committer:
sveljko
Date:
Tue Nov 22 22:21:39 2016 +0000
Revision:
2:d85e42c1125d
Parent:
0:d13755cfb705
Added `pubnub_helper` module

Who changed what in which revision?

UserRevisionLine numberNew contents of line
sveljko 0:d13755cfb705 1 /* -*- c-file-style:"stroustrup"; indent-tabs-mode: nil -*- */
sveljko 0:d13755cfb705 2 #if !defined INC_PUBNUB_MEMORY_BLOCK
sveljko 0:d13755cfb705 3 #define INC_PUBNUB_MEMORY_BLOCK
sveljko 0:d13755cfb705 4
sveljko 0:d13755cfb705 5 #include <stdint.h>
sveljko 0:d13755cfb705 6 #include <stdlib.h>
sveljko 0:d13755cfb705 7
sveljko 0:d13755cfb705 8
sveljko 0:d13755cfb705 9 /** @file pubnub_memory_block.h
sveljko 0:d13755cfb705 10
sveljko 0:d13755cfb705 11 Memory block module.
sveljko 0:d13755cfb705 12
sveljko 0:d13755cfb705 13 Support module for having a standard way to represent a
sveljko 0:d13755cfb705 14 "block" of memory - that is, a pointer and the size of
sveljko 0:d13755cfb705 15 memory allocated (in whatever way) to said pointer.
sveljko 0:d13755cfb705 16 */
sveljko 0:d13755cfb705 17
sveljko 0:d13755cfb705 18
sveljko 0:d13755cfb705 19 /** A block of memory whose pointer is pointing to a
sveljko 0:d13755cfb705 20 bytes. This is most often the preferred one to use.
sveljko 0:d13755cfb705 21 */
sveljko 0:d13755cfb705 22 struct pubnub_byte_mem_block {
sveljko 0:d13755cfb705 23 uint8_t *ptr;
sveljko 0:d13755cfb705 24 size_t size;
sveljko 0:d13755cfb705 25 };
sveljko 0:d13755cfb705 26
sveljko 0:d13755cfb705 27 /** A block of memory whose pointer is void pointer.
sveljko 0:d13755cfb705 28 Not nice, but useful at times.
sveljko 0:d13755cfb705 29 */
sveljko 0:d13755cfb705 30 struct pubnub_mem_block {
sveljko 0:d13755cfb705 31 void *ptr;
sveljko 0:d13755cfb705 32 size_t size;
sveljko 0:d13755cfb705 33 };
sveljko 0:d13755cfb705 34
sveljko 0:d13755cfb705 35 /** Helper typedef for a general (void) memory block */
sveljko 0:d13755cfb705 36 typedef struct pubnub_mem_block pubnub_mebl_t;
sveljko 0:d13755cfb705 37
sveljko 0:d13755cfb705 38 /** Helper typedef for a byte memory block */
sveljko 0:d13755cfb705 39 typedef struct pubnub_byte_mem_block pubnub_bymebl_t;
sveljko 0:d13755cfb705 40
sveljko 0:d13755cfb705 41
sveljko 0:d13755cfb705 42 #endif /* !defined INC_PUBNUB_MEMORY_BLOCK */