XIOS  1.0
Xml I/O Server
 Tout Classes Espaces de nommage Fichiers Fonctions Variables Définitions de type Énumérations Valeurs énumérées Amis Macros
duration.hpp
Aller à la documentation de ce fichier.
1 #ifndef __XIOS_CDuration__
2 #define __XIOS_CDuration__
3 
5 #include "xios_spl.hpp"
6 #include "exception.hpp"
7 
8 namespace xios
9 {
11  typedef long long int Time;
12  class CCalendar;
13 
15 
16  struct CDuration
17  {
18  public: /* static */
19  static CDuration FromString(const StdString& str);
20 
21  public:
22  CDuration(double year=0.0, double month=0.0, double day=0.0, double hour=0.0, double minute=0.0, double second=0.0, double timestep=0.0);
23 
25  CDuration& operator=(const CDuration& duration);
26  bool operator==(const CDuration& duration);
27 
28  friend StdOStream& operator<<(StdOStream& out, const CDuration& duration);
29  friend StdIStream& operator>>(StdIStream& in , CDuration& duration);
30 
32  bool isNone(void) const;
33 
35  CDuration& resolve(const CCalendar& calendar, bool noNegativeTime = false);
38  StdString toString(void) const;
39  StdString toStringUDUnits(void) const;
40 
43  };
44 
46 
47  const extern CDuration Year, Month, Week, Day,
49 } // namespace xios
50 
51 #endif // __XIOS_CDuration__
CDuration & solveTimeStep(const CCalendar &c)
Definition: duration.cpp:121
const CDuration Day(0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0)
Definition: duration.hpp:47
friend StdIStream & operator>>(StdIStream &in, CDuration &duration)
Definition: duration.cpp:51
const CDuration TimeStep(0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0)
Definition: duration.hpp:47
bool operator==(const CDuration &duration)
This operation may not serve much, it&#39;s here because of the need of operator== from generic class CTy...
Definition: duration.cpp:39
const CDuration Hour(0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0)
Definition: duration.hpp:47
CDuration & operator=(const CDuration &duration)
Opérateurs ///.
Definition: duration.cpp:29
StdString toStringUDUnits(void) const
Definition: duration.cpp:159
double year
Propriétés publiques ///.
Definition: duration.hpp:42
const CDuration NoneDu(0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0)
Definition: duration.hpp:47
CDuration(double year=0.0, double month=0.0, double day=0.0, double hour=0.0, double minute=0.0, double second=0.0, double timestep=0.0)
Definition: duration.cpp:22
const CDuration Minute(0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0)
Definition: duration.hpp:47
std::string StdString
Definition: xios_spl.hpp:48
#define xios(arg)
long long int Time
////////////////////// Déclarations ////////////////////// ///
Definition: duration.hpp:11
std::istream StdIStream
Definition: xios_spl.hpp:47
friend StdOStream & operator<<(StdOStream &out, const CDuration &duration)
Definition: duration.cpp:45
CDuration & resolve(const CCalendar &calendar, bool noNegativeTime=false)
Traitement ///.
Definition: duration.cpp:134
const CDuration Second(0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0)
Definition: duration.hpp:47
static CDuration FromString(const StdString &str)
Definition: duration.cpp:180
const CDuration Week(0.0, 0.0, 7.0, 0.0, 0.0, 0.0, 0.0)
Definition: duration.hpp:47
bool isNone(void) const
Test ///.
Definition: duration.cpp:114
const CDuration Month(0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0)
Definition: duration.hpp:47
double timestep
Definition: duration.hpp:42
std::ostream StdOStream
Definition: xios_spl.hpp:46
const CDuration Year(1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0)
////////////////////// Définitions ////////////////////// ///
Definition: duration.hpp:47
StdString toString(void) const
Autres ///.
Definition: duration.cpp:141