calendar_util.hpp 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. #ifndef __XIOS_CCalendar_util__
  2. #define __XIOS_CCalendar_util__
  3. /// XIOS headers ///
  4. #include "xios_spl.hpp"
  5. #include "exception.hpp"
  6. #include "calendar.hpp"
  7. namespace xios
  8. {
  9. /// ////////////////////// Déclarations ////////////////////// ///
  10. CDuration operator*(const double& scal, const CDuration& ddr);
  11. CDuration operator-(const CDuration& ddr, const CDuration& dr);
  12. CDuration operator+(const CDuration& ddr, const CDuration& dr);
  13. CDuration operator*(const CDuration& ddr, const double& scal);
  14. CDuration operator-(const CDuration& ddr);
  15. CDate operator+(const CDate& dt, const CDuration& dr); // Non testée.
  16. CDate operator-(const CDate& dt, const CDuration& dr);
  17. CDuration operator-(const CDate& dt0, const CDate& dt1);
  18. /// Les opérateurs de comparaison. (Non testés pour le moment)
  19. bool operator==(const CDuration& ddr, const CDuration& dr);
  20. bool operator!=(const CDuration& ddr, const CDuration& dr);
  21. bool operator==(const CDate& dt0, const CDate& dt1);
  22. bool operator< (const CDate& dt0, const CDate& dt1);
  23. bool operator!=(const CDate& dt0, const CDate& dt1);
  24. bool operator> (const CDate& dt0, const CDate& dt1);
  25. bool operator>=(const CDate& dt0, const CDate& dt1);
  26. bool operator<=(const CDate& dt0, const CDate& dt1);
  27. ///---------------------------------------------------------------
  28. //!< Provides a fake "less" comparator for durations that can be used as a comparator for maps
  29. struct DurationFakeLessComparator {
  30. bool operator()(const CDuration& dur1, const CDuration& dur2) const;
  31. };
  32. } // namespace xios
  33. #endif //__XIOS_CCalendar_util__