KaliVeda  1.13/01
Heavy-Ion Analysis Toolkit
KVDatime.h
Go to the documentation of this file.
1 /*******************************************************************************
2 $Id: KVDatime.h,v 1.4 2008/04/10 15:43:45 franklan Exp $
3 $Revision: 1.4 $
4 $Date: 2008/04/10 15:43:45 $
5 $Author: franklan $
6 *******************************************************************************/
7 
8 #ifndef __KVDATIME_H
9 #define __KVDATIME_H
10 
11 #include "TDatime.h"
12 #include "TString.h"
13 
14 class KVList;
15 
32 class KVDatime: public TDatime {
33  static KVList* fmonths;
34  static Int_t ndatime;
35  void init();
37 
38 public:
39 
49  };
50 
51  KVDatime();
52  KVDatime(const Char_t* DateString, EKVDateFormat f = kGANACQ);
53  KVDatime(const KVDatime& d)
54  : TDatime((const TDatime&)d)
55  {
56  init();
57  }
58  KVDatime& operator=(const KVDatime&);
59  KVDatime(const TDatime& d)
60  : TDatime(d)
61  {
62  init();
63  }
64  KVDatime(UInt_t tloc, Bool_t dosDate = kFALSE)
65  : TDatime(tloc, dosDate)
66  {
67  init();
68  }
69  KVDatime(Int_t date, Int_t time)
70  : TDatime(date, time)
71  {
72  init();
73  }
74  KVDatime(Int_t year, Int_t month, Int_t day,
75  Int_t hour, Int_t min, Int_t sec)
76  : TDatime(year, month, day, hour, min, sec)
77  {
78  init();
79  }
80  virtual ~ KVDatime();
81 
82  void SetGanacqDate(const Char_t* GanacqDateString);
83  void SetGanacq2010Date(const Char_t* GanacqDateString);
84  void SetGanacqNarvalDate(const Char_t* GanacqDateString);
85  const Char_t* AsGanacqDateString() const;
86  const Char_t* AsDMYDateString() const;
87  void SetSQLDate(const Char_t* SQLDateString);
88  void SetSRBDate(const Char_t* SRBDateString);
89  void SetIRODSDate(const Char_t* IRODSDateString);
90  void SetDMYDate(const Char_t* DMYString);
91 
92  const Char_t* String(EKVDateFormat fmt = kCTIME);
93 
94  static Bool_t IsSQLFormat(const Char_t* date);
95  static Bool_t IsGANACQFormat(const Char_t* date);
96  static Bool_t IsGANACQ2010Format(const Char_t* date);
97  static Bool_t IsGANACQNarvalFormat(const Char_t* date);
98  static Bool_t IsSRBFormat(const Char_t* date);
99  static Bool_t IsIRODSFormat(const Char_t* date);
100 
101  static const Char_t* Month(Int_t m);
102  Double_t GetNumberOfSeconds(Int_t ref_year = 0);
104 
105  ClassDef(KVDatime, 0) //Extension of TDatime class
106 };
107 
108 #endif
int Int_t
unsigned int UInt_t
#define d(i)
char Char_t
bool Bool_t
double Double_t
#define ClassDef(name, id)
Extension of TDatime to handle various useful date formats.
Definition: KVDatime.h:32
static const Char_t * Month(Int_t m)
Definition: KVDatime.cpp:545
Double_t GetNumberOfSeconds(Int_t ref_year=0)
Definition: KVDatime.cpp:554
void SetDMYDate(const Char_t *DMYString)
Set date from string in format "DD/MM/YYYY".
Definition: KVDatime.cpp:259
void SetIRODSDate(const Char_t *IRODSDateString)
Definition: KVDatime.cpp:241
virtual ~ KVDatime()
EKVDateFormat
Definition: KVDatime.h:40
@ kSRB
Definition: KVDatime.h:44
@ kGANACQ2010
Definition: KVDatime.h:47
@ kIRODS
Definition: KVDatime.h:45
@ kGANACQ
Definition: KVDatime.h:42
@ kDMY
Definition: KVDatime.h:46
@ kSQL
Definition: KVDatime.h:43
@ kCTIME
Definition: KVDatime.h:41
@ kGANACQNarval
Definition: KVDatime.h:48
static Bool_t IsGANACQFormat(const Char_t *date)
Definition: KVDatime.cpp:433
static Bool_t IsSRBFormat(const Char_t *date)
Definition: KVDatime.cpp:513
TString fStr
internal buffer used by String method
Definition: KVDatime.h:36
KVDatime()
Definition: KVDatime.cpp:52
const Char_t * String(EKVDateFormat fmt=kCTIME)
Definition: KVDatime.cpp:401
static Bool_t IsSQLFormat(const Char_t *date)
Definition: KVDatime.cpp:496
static Bool_t IsGANACQ2010Format(const Char_t *date)
Definition: KVDatime.cpp:455
void init()
Definition: KVDatime.cpp:25
void SetSQLDate(const Char_t *SQLDateString)
Definition: KVDatime.cpp:204
KVDatime(const KVDatime &d)
Definition: KVDatime.h:53
void SetGanacqNarvalDate(const Char_t *GanacqDateString)
Definition: KVDatime.cpp:297
const Char_t * AsDMYDateString() const
Definition: KVDatime.cpp:385
KVDatime & operator=(const KVDatime &)
copy assignment operator
Definition: KVDatime.cpp:179
KVDatime(Int_t date, Int_t time)
Definition: KVDatime.h:69
const Char_t * AsGanacqDateString() const
Definition: KVDatime.cpp:371
void SetSRBDate(const Char_t *SRBDateString)
Definition: KVDatime.cpp:221
static Int_t ndatime
counter
Definition: KVDatime.h:34
static Bool_t IsGANACQNarvalFormat(const Char_t *date)
Definition: KVDatime.cpp:476
static KVList * fmonths
list of months
Definition: KVDatime.h:33
static Bool_t IsIRODSFormat(const Char_t *date)
Definition: KVDatime.cpp:530
void SetGanacq2010Date(const Char_t *GanacqDateString)
Definition: KVDatime.cpp:273
KVDatime(UInt_t tloc, Bool_t dosDate=kFALSE)
Definition: KVDatime.h:64
Double_t GetDureeInSeconds(KVDatime from)
Definition: KVDatime.cpp:590
KVDatime(const TDatime &d)
Definition: KVDatime.h:59
KVDatime(Int_t year, Int_t month, Int_t day, Int_t hour, Int_t min, Int_t sec)
Definition: KVDatime.h:74
void SetGanacqDate(const Char_t *GanacqDateString)
Definition: KVDatime.cpp:323
Extended TList class which owns its objects by default.
Definition: KVList.h:27
const long double m
Definition: KVUnits.h:70