1 /* This is part of the Model Coupling Environmental Library or MCEL
2 If you have any questions mail matt at matt@mail.bettencourt.info
3 it is covered under the LGPL http://www.gnu.org/licenses/lgpl.html
5 This code was developed with DoD HPCMO CHSSI and PET funding
6 http://www.hpcmo.hpc.mil/ */
31 # define YYMMDDHH2SECS yymmddhh2secs_
32 # define YYMMDDHHMMSS2SECS yymmddhhmmss2secs_
33 # define YYYYMMDDHHMMSS2SECS yyyymmddhhmmss2secs_
34 # define SECS2YYYYMMDDHHMMSS secs2yyyymmddhhmmss_
36 # define YYMMDDHH2SECS yymmddhh2secs
37 # define YYMMDDHHMMSS2SECS yymmddhhmmss2secs
38 # define YYYYMMDDHHMMSS2SECS yyyymmddhhmmss2secs
39 # define SECS2YYYYMMDDHHMMSS secs2yyyymmddhhmmss
45 void YYMMDDHH2SECS(char* date
, double* time
);
46 void YYMMDDHHMMSS2SECS(char* date
, double* time
);
47 void YYYYMMDDHHMMSS2SECS(char* date
, double* time
);
48 void SECS2YYYYMMDDHHMMSS(char* date
, double* time
);
51 void YYMMDDHH2SECS(char* date
, double* time
) {
54 strncpy(date2
,date
,8);
55 strncat(date2
,"0000",4);
57 YYMMDDHHMMSS2SECS(date2
, time
);
62 void YYMMDDHHMMSS2SECS(char* date
, double* time
) {
67 sscanf(date
,"%2d",&year
);
73 strncat(date2
,date
,12);
74 YYYYMMDDHHMMSS2SECS(date2
,time
);
78 void YYYYMMDDHHMMSS2SECS(char* date
, double* time
) {
85 sscanf(date
,"%4d%2d%2d%2d%2d%2d",&t2
.tm_year
,&t2
.tm_mon
,&t2
.tm_mday
,
86 &t2
.tm_hour
,&t2
.tm_min
,&t2
.tm_sec
);
87 /* Correct year, month */
95 *time
= difftime(tt2
,tt1
);
100 void SECS2YYYYMMDDHHMMSS(char* date
, double* time
) {
106 tt2
= tt1
+(unsigned long int )*time
;
108 localtime_r(&tt2
,&t2
);
111 localtime_r(&tt2
,&t2
);
113 sprintf(date
,"%04d%02d%02d%02d%02d%02d",