1 |
/* Copyright (c) 2002, Joerg Wunsch |
/* Copyright (c) 2002,2005, Joerg Wunsch |
2 |
All rights reserved. |
All rights reserved. |
3 |
|
|
4 |
Redistribution and use in source and binary forms, with or without |
Redistribution and use in source and binary forms, with or without |
29 |
|
|
30 |
/* $Id$ */ |
/* $Id$ */ |
31 |
|
|
32 |
#include <inttypes.h> |
#include <stdint.h> |
33 |
#include <stdio.h> |
#include <stdio.h> |
34 |
|
|
|
#if !defined(DOXYGEN) |
|
|
|
|
|
struct __file { |
|
|
char *buf; /* buffer pointer */ |
|
|
unsigned char unget; /* ungetc() buffer */ |
|
|
uint8_t flags; /* flags, see below */ |
|
|
#define __SRD 0x0001 /* OK to read */ |
|
|
#define __SWR 0x0002 /* OK to write */ |
|
|
#define __SSTR 0x0004 /* this is an sprintf/snprintf string */ |
|
|
#define __SPGM 0x0008 /* fmt string is in progmem */ |
|
|
#define __SERR 0x0010 /* found error */ |
|
|
#define __SEOF 0x0020 /* found EOF */ |
|
|
#define __SUNGET 0x040 /* ungetc() happened */ |
|
|
#if 0 |
|
|
/* possible future extensions, will require uint16_t flags */ |
|
|
#define __SRW 0x0080 /* open for reading & writing */ |
|
|
#define __SLBF 0x0100 /* line buffered */ |
|
|
#define __SNBF 0x0200 /* unbuffered */ |
|
|
#define __SMBF 0x0400 /* buf is from malloc */ |
|
|
#endif |
|
|
int size; /* size of buffer */ |
|
|
int len; /* characters read or written so far */ |
|
|
int (*put)(char); /* function to write one char to device */ |
|
|
int (*get)(void); /* function to read one char from device */ |
|
|
}; |
|
|
|
|
|
#endif /* not DOXYGEN */ |
|
|
|
|
35 |
/* values for PRINTF_LEVEL */ |
/* values for PRINTF_LEVEL */ |
36 |
#define PRINTF_MIN 1 |
#define PRINTF_MIN 1 |
37 |
#define PRINTF_STD 2 |
#define PRINTF_STD 2 |