eid-viewer
eid-viewer library
dateconv.h
1 #ifndef EID_VWR_DATECONV_H
2 #define EID_VWR_DATECONV_H
3 
4 #include <string>
5 #include "convworker.h"
6 
7 struct Date {
8  EID_STRING year;
9  int month;
10  EID_STRING day;
11 
12  Date() : year(TEXT("0")), month(0), day(TEXT("0")) {};
13  Date(EID_STRING y, int m, EID_STRING d) : year(y), month(m), day(d) {};
14 };
15 
16 class DateParser : public Date {
17 public:
18  virtual void input(EID_STRING) = 0;
19 };
20 
21 class DateWriter : public ConversionWorker {
22 private:
23  DateWriter() {};
24 protected:
25  DateParser* parser;
26 public:
27  DateWriter(DateParser* p) : parser(p) {};
28  virtual EID_STRING output() = 0;
29  virtual EID_STRING convert(const void* original) {
30  parser->input((EID_CHAR*)original);
31  return output();
32  }
33 };
34 
35 class XmlDateParser : public DateParser {
36 public:
37  virtual void input(EID_STRING);
38 };
39 
40 class XmlDateWriter : public DateWriter {
41 public:
43  virtual EID_STRING output();
44 };
45 
46 #endif
Definition: dateconv.h:21
Definition: dateconv.h:7
Definition: dateconv.h:16
Definition: convworker.h:10
Definition: dateconv.h:40
Definition: dateconv.h:35