File tree 1 file changed +28
-1
lines changed
1 file changed +28
-1
lines changed Original file line number Diff line number Diff line change @@ -133,13 +133,40 @@ struct EEPROMClass{
133
133
for ( int count = sizeof (T) ; count ; --count, ++e ) *ptr++ = *e;
134
134
return t;
135
135
}
136
-
136
+
137
+ String& get (int idx, String& data) {
138
+ data = " " ;
139
+ char c;
140
+ for (size_t i = idx; (c = get (i, c)); i++) {
141
+ data += c;
142
+ }
143
+ return data;
144
+ }
145
+
137
146
template < typename T > const T &put ( int idx, const T &t ){
138
147
EEPtr e = idx;
139
148
const uint8_t *ptr = (const uint8_t *) &t;
140
149
for ( int count = sizeof (T) ; count ; --count, ++e ) (*e).update ( *ptr++ );
141
150
return t;
142
151
}
152
+
153
+ char * put (int idx, char * data) {
154
+ size_t i;
155
+ for (i = 0 ; data[i]; i++) {
156
+ put (idx + i, data[i]);
157
+ }
158
+ put (idx + i, ' \x00 ' );
159
+ return data;
160
+ }
161
+
162
+ char const * put (int idx, char const * data) {
163
+ return put (idx, const_cast <char *>(data));
164
+ }
165
+
166
+ String& put (int idx, String& data) {
167
+ put (idx, data.c_str ());
168
+ return data;
169
+ }
143
170
};
144
171
145
172
static EEPROMClass EEPROM;
You can’t perform that action at this time.
0 commit comments