ViewVC Help
View File | Revision Log | Show Annotations | Download File | View Changeset | Root Listing
root/zoe/trunk/Stamp.cpp
(Generate patch)

Comparing trunk/Stamp.cpp (file contents):
Revision 25 by douglas, 2004-07-17T16:29:02-07:00 vs.
Revision 39 by douglas, 2004-07-23T17:52:53-07:00

# Line 6 | Line 6
6  
7   #include "Stamp.hpp"
8  
9 < Stamp::Stamp(int day, int month, int year, int hour, int minute, int second)
9 > Stamp::Stamp(const ext::String& when)
10   {
11 <        stamp.tm_mday = day;
12 <        stamp.tm_mon = month;
13 <        stamp.tm_year = year;
14 <        stamp.tm_hour = hour;
15 <        stamp.tm_min = minute;
16 <        stamp.tm_sec = second;
11 >        strptime(when.NullTerminate(), "%F %T", &stamp);
12  
13 <        timegm(&stamp);
13 >        this->when = timegm(&stamp);
14   }
15  
16 < Stamp::Stamp(const ext::String& when)
16 > ext::String Stamp::get822() const
17   {
18 <        strptime(when.NullTerminate(), "%a, %d %b %Y %T %Z", &stamp);
18 >        char when[30];
19 >
20 >        std::strftime(when, 30, "%a, %d %b %Y %T GMT", &stamp);
21 >
22 >        return when;
23   }
24  
25 < Stamp::operator ext::String() const
25 > ext::String Stamp::getW3() const
26   {
27 <        char when[30];
27 >        char when[21];
28  
29 <        std::strftime(when, 30, "%a, %d %b %Y %T GMT", &stamp);
29 >        std::strftime(when, 21, "%FT%TZ", &stamp);
30  
31          return when;
32   }
33  
34 < Stamp Stamp::operator+(Stamp stamp)
34 > ext::String Stamp::getDate() const
35   {
36 <        return timegm(&this->stamp) + timegm(&stamp.stamp);
36 >        char date[11];
37 >
38 >        std::strftime(date, 11, "%m/%d/%Y", &stamp);
39 >
40 >        return date;
41   }
42  
43 < Stamp Stamp::operator-(Stamp stamp)
43 > ext::String Stamp::getTime() const
44   {
45 <        return std::time_t(difftime(timegm(&this->stamp), timegm(&stamp.stamp)));
45 >        char time[12];
46 >
47 >        std::strftime(time, 12, "%I:%M:%S %p", &stamp);
48 >
49 >        return time;
50 > }
51 >
52 > void Stamp::setSeconds(int seconds)
53 > {
54 >        stamp.tm_sec = seconds;
55 >        when = timegm(&stamp);
56 > }
57 >
58 > void Stamp::setMinutes(int minutes)
59 > {
60 >        stamp.tm_min = minutes;
61 >        when = timegm(&stamp);
62 > }
63 >
64 > Stamp::operator ext::String() const
65 > {
66 >        char when[24];
67 >
68 >        std::strftime(when, 24, "%F %T GMT", &stamp);
69 >
70 >        return when;
71   }

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines