Hi Steve, The class in my little example was to convert between dates given in mm/dd/yy or mm/dd/yyyy format and business days (skipping saturdays and sundays). Its use is probably only for the financial world, maybe interesting to incorporate in a more general date time class. Its layout is as follows: #ifndef ROOT_DATE #define ROOT_DATE ////////////////////////////////////////////////////////////////////////// // // // TSDate // // // // Class implementing interface to convert between calender // // and bussines days // // // ////////////////////////////////////////////////////////////////////////// #include <stdlib.h> #include "TObject.h" #include "TMath.h" #include "TString.h" class TSDate : public TObject { protected: Long_t fBusinessDate; // business date number void Copy(TObject& obj); private: Long_t JulianDateToBusinessDate(Long_t julianDate); Long_t BusinessDateToJulianDate(Long_t businessDate); Long_t StringToBusinessDate(const Char_t string[]); Long_t StringToJulianDate(const Char_t string[]); Char_t* JulianDateToString(Long_t julianDate); Char_t* BusinessDateToString(Long_t businessDate); Int_t FromString(const Char_t *string, Int_t &month, Int_t &day, Int_t &year); public: TSDate(); TSDate(Long_t dayNr); TSDate(const Char_t* dayString); TSDate(const TSDate& date); virtual ~TSDate(); void SetDate (Long_t dayNr); void SetDate (const Char_t* dayString); Long_t const GetDateNr () const { return fBusinessDate; } Int_t const GetYear (); Int_t const GetMonth (); Int_t const GetDay (); void GetDateSpan (Long_t dayNr, Int_t &dMonth, Int_t &dDay, Int_t &dYear); void GetDateSpan (const Char_t* dateString, Int_t &dMonth, Int_t &dDay, Int_t &dYear); const Char_t* GetDateString (); TSDate& operator=(const TSDate &date); friend TSDate MinDate(TSDate &date1, TSDate &date2); friend TSDate MaxDate(TSDate &date1, TSDate &date2); ClassDef(TSDate,0) //Conversion from and to bussiness dates }; #endif Eddy
This archive was generated by hypermail 2b29 : Tue Jan 02 2001 - 11:50:25 MET