39 lines
1.0 KiB
C
39 lines
1.0 KiB
C
#ifndef ESCPOS_H
|
|
#define ESCPOS_H
|
|
#include <stdint.h>
|
|
#include <stddef.h>
|
|
|
|
const char *escpos_version(void);
|
|
|
|
typedef struct escpos_buffer escpos_buffer;
|
|
|
|
/*
|
|
* Crea un buffer vacío. Devuelve un puntero al buffer, o NULL si no hay
|
|
* memoria.
|
|
* El que llama es el dueño y debe liberarlo con escpos_buffer_free.
|
|
* Por ejemplo: si main.c llama a escpos_buffer_new, main.c es EL DUEÑO.
|
|
*/
|
|
escpos_buffer *escpos_buffer_new(void);
|
|
|
|
/*
|
|
* Libera el buffer y toda su memoria. Si recibe NULL no hace nada.
|
|
* Propiedad: después de llamarla, el puntero ya no es válido.
|
|
*/
|
|
void escpos_buffer_free(escpos_buffer *buffer);
|
|
|
|
/*
|
|
* Añade un byte al final del buffer.
|
|
* Devuelve 0 si va bien, o -1 si no hay memoria; en ese caso el buffer
|
|
* queda intacto.
|
|
*/
|
|
int escpos_buffer_append_byte(escpos_buffer *buffer, uint8_t byte);
|
|
|
|
|
|
/*
|
|
* Añade los bytes al final del buffer
|
|
*/
|
|
int escpos_buffer_append(escpos_buffer *buffer, uint8_t byte[], size_t size);
|
|
|
|
|
|
#endif
|