Jpp
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Private Attributes | Friends | List of all members
JSYSTEM::JDateAndTime Struct Reference

Auxililary class to get date and time. More...

#include <JDate.hh>

Public Member Functions

 JDateAndTime ()
 Default constructor. More...
 
 JDateAndTime (const time_t t1)
 Constructor. More...
 
const tm * operator-> () const
 Smart pointer. More...
 
int getSeconds () const
 seconds after the minute [0-59] More...
 
int getMinutes () const
 minutes after the hour [0-59] More...
 
int getHour () const
 hours after midnight [0-23] More...
 
int getDay () const
 day of the month [1-31] More...
 
int getMonth () const
 month of the year [1-12] More...
 
int getYear () const
 year a.d. More...
 
 operator std::string () const
 Type conversion operator. More...
 
std::string toString () const
 Get ASCII formatted date and time. More...
 
const JDateAndTimeoperator() () const
 Set date and time. More...
 
void set () const
 Set to actual time. More...
 
void set (const time_t t1) const
 Set to given time. More...
 
double getElapsedTime (const JDateAndTime &object) const
 Get elapsed time since given date and time. More...
 

Private Attributes

time_t ts
 
tm * tp
 

Friends

std::ostream & operator<< (std::ostream &out, const JDateAndTime &object)
 Write date and time to output. More...
 

Detailed Description

Auxililary class to get date and time.

Definition at line 59 of file JSystem/JDate.hh.

Constructor & Destructor Documentation

JSYSTEM::JDateAndTime::JDateAndTime ( )
inline

Default constructor.

Definition at line 63 of file JSystem/JDate.hh.

64  {
65  set();
66  }
void set() const
Set to actual time.
JSYSTEM::JDateAndTime::JDateAndTime ( const time_t  t1)
inline

Constructor.

Parameters
t1time

Definition at line 74 of file JSystem/JDate.hh.

75  {
76  set(t1);
77  }
void set() const
Set to actual time.

Member Function Documentation

const tm* JSYSTEM::JDateAndTime::operator-> ( ) const
inline

Smart pointer.

Returns
pointer to time structure

Definition at line 85 of file JSystem/JDate.hh.

86  {
87  return tp;
88  }
int JSYSTEM::JDateAndTime::getSeconds ( ) const
inline

seconds after the minute [0-59]

Definition at line 91 of file JSystem/JDate.hh.

int JSYSTEM::JDateAndTime::getMinutes ( ) const
inline

minutes after the hour [0-59]

Definition at line 92 of file JSystem/JDate.hh.

int JSYSTEM::JDateAndTime::getHour ( ) const
inline

hours after midnight [0-23]

Definition at line 93 of file JSystem/JDate.hh.

int JSYSTEM::JDateAndTime::getDay ( ) const
inline

day of the month [1-31]

Definition at line 94 of file JSystem/JDate.hh.

int JSYSTEM::JDateAndTime::getMonth ( ) const
inline

month of the year [1-12]

Definition at line 95 of file JSystem/JDate.hh.

int JSYSTEM::JDateAndTime::getYear ( ) const
inline

year a.d.

Definition at line 96 of file JSystem/JDate.hh.

JSYSTEM::JDateAndTime::operator std::string ( ) const
inline

Type conversion operator.

Returns
ASCII formatted date and time

Definition at line 104 of file JSystem/JDate.hh.

105  {
106  return toString();
107  }
std::string toString() const
Get ASCII formatted date and time.
std::string JSYSTEM::JDateAndTime::toString ( ) const
inline

Get ASCII formatted date and time.

Returns
ASCII formatted date and time

Definition at line 115 of file JSystem/JDate.hh.

116  {
117  const std::string buffer = ctime(&ts);
118 
119  // remove the last character (carriage return) from the date string
120 
121  return buffer.substr(0, buffer.length() - 1);
122  }
const JDateAndTime& JSYSTEM::JDateAndTime::operator() ( ) const
inline

Set date and time.

Returns
date and time

Definition at line 130 of file JSystem/JDate.hh.

131  {
132  set();
133 
134  return *this;
135  }
void set() const
Set to actual time.
void JSYSTEM::JDateAndTime::set ( ) const
inline

Set to actual time.

Definition at line 141 of file JSystem/JDate.hh.

142  {
143  time(&ts);
144 
145  tp = localtime(&ts);
146  }
void JSYSTEM::JDateAndTime::set ( const time_t  t1) const
inline

Set to given time.

Parameters
t1time

Definition at line 154 of file JSystem/JDate.hh.

155  {
156  ts = t1;
157  tp = localtime(&t1);
158  }
double JSYSTEM::JDateAndTime::getElapsedTime ( const JDateAndTime object) const
inline

Get elapsed time since given date and time.

Parameters
objectdate and time
Returns
time [s]

Definition at line 167 of file JSystem/JDate.hh.

168  {
169  return difftime(this->ts, object.ts);
170  }

Friends And Related Function Documentation

std::ostream& operator<< ( std::ostream &  out,
const JDateAndTime object 
)
friend

Write date and time to output.

Parameters
outoutput stream
objectdate and time
Returns
output stream

Definition at line 180 of file JSystem/JDate.hh.

181  {
182  return out << object.toString();
183  }

Member Data Documentation

time_t JSYSTEM::JDateAndTime::ts
mutableprivate

Definition at line 187 of file JSystem/JDate.hh.

tm* JSYSTEM::JDateAndTime::tp
mutableprivate

Definition at line 188 of file JSystem/JDate.hh.


The documentation for this struct was generated from the following file: