Qualia
0.2
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
src
qualia
compat
Print.h
Go to the documentation of this file.
1
/*
2
Print.h - Base class that provides print() and println()
3
Copyright (c) 2008 David A. Mellis. All right reserved.
4
5
This library is free software; you can redistribute it and/or
6
modify it under the terms of the GNU Lesser General Public
7
License as published by the Free Software Foundation; either
8
version 2.1 of the License, or (at your option) any later version.
9
10
This library is distributed in the hope that it will be useful,
11
but WITHOUT ANY WARRANTY; without even the implied warranty of
12
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13
Lesser General Public License for more details.
14
15
You should have received a copy of the GNU Lesser General Public
16
License along with this library; if not, write to the Free Software
17
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
18
*/
19
20
#ifndef Print_Compat_h
21
#define Print_Compat_h
22
23
#include <
qualia/core/common.h
>
24
25
#if !is_arduino()
26
27
#include <inttypes.h>
28
#include <stdio.h>
// for size_t
29
30
#include <
qualia/compat/WString.h
>
31
#include <
qualia/compat/Printable.h
>
32
33
#define DEC 10
34
#define HEX 16
35
#define OCT 8
36
#define BIN 2
37
38
class
String;
39
class
__FlashStringHelper;
40
41
class
Print
42
{
43
private
:
44
int
write_error
;
45
size_t
printNumber
(
unsigned
long
, uint8_t);
46
size_t
printFloat
(
double
, uint8_t);
47
protected
:
48
void
setWriteError
(
int
err = 1) {
write_error
= err; }
49
public
:
50
Print
() :
write_error
(0) {}
51
52
int
getWriteError
() {
return
write_error
; }
53
void
clearWriteError
() {
setWriteError
(0); }
54
55
virtual
size_t
write
(uint8_t) = 0;
56
size_t
write
(
const
char
*str) {
57
if
(str == NULL)
return
0;
58
return
write
((
const
uint8_t *)str, strlen(str));
59
}
60
virtual
size_t
write
(
const
uint8_t *buffer,
size_t
size);
61
62
#if is_avr()
63
size_t
print
(
const
__FlashStringHelper *);
64
#endif
65
size_t
print
(
const
String &);
66
size_t
print
(
const
char
[]);
67
size_t
print
(
char
);
68
size_t
print
(
unsigned
char
,
int
=
DEC
);
69
size_t
print
(
int
,
int
=
DEC
);
70
size_t
print
(
unsigned
int
,
int
=
DEC
);
71
size_t
print
(
long
,
int
=
DEC
);
72
size_t
print
(
unsigned
long
,
int
=
DEC
);
73
size_t
print
(
double
,
int
= 2);
74
size_t
print
(
const
Printable
&);
75
76
#if is_avr()
77
size_t
println
(
const
__FlashStringHelper *);
78
#endif
79
size_t
println
(
const
String &s);
80
size_t
println
(
const
char
[]);
81
size_t
println
(
char
);
82
size_t
println
(
unsigned
char
,
int
=
DEC
);
83
size_t
println
(
int
,
int
=
DEC
);
84
size_t
println
(
unsigned
int
,
int
=
DEC
);
85
size_t
println
(
long
,
int
=
DEC
);
86
size_t
println
(
unsigned
long
,
int
=
DEC
);
87
size_t
println
(
double
,
int
= 2);
88
size_t
println
(
const
Printable
&);
89
size_t
println
(
void
);
90
};
91
92
#endif // !is_arduino()
93
94
#endif
Generated on Fri Oct 11 2013 19:01:21 for Qualia by
1.8.3.1