Changeset 1642 for XIOS/dev/branch_openmp/src/interface/c/icdate.cpp
- Timestamp:
- 01/23/19 10:31:44 (5 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
XIOS/dev/branch_openmp/src/interface/c/icdate.cpp
r1545 r1642 35 35 { 36 36 long long int cxios_date_convert_to_seconds(cxios_date date_c) 37 TRY 37 38 { 38 39 xios::CDate date = xios::CDate(getCalendar("long long int cxios_date_convert_to_seconds(cxios_date date_c)"), … … 41 42 return date; 42 43 } 44 CATCH_DUMP_STACK 43 45 44 46 void cxios_date_convert_to_string(cxios_date date_c, char* str, int str_size) 47 TRY 45 48 { 46 49 xios::CDate date = xios::CDate(getCalendar("void cxios_date_convert_to_string(cxios_date date_c, char* str, int str_size)"), … … 51 54 ERROR("void cxios_date_convert_to_string(cxios_date date_c, char* str, int str_size)", << "Input string is too short"); 52 55 } 56 CATCH_DUMP_STACK 53 57 54 58 cxios_date cxios_date_convert_from_string(const char* str, int str_size) 59 TRY 55 60 { 56 61 std::string date_str; … … 63 68 return { date.getYear(), date.getMonth(), date.getDay(), date.getHour(), date.getMinute(), date.getSecond() }; 64 69 } 70 CATCH_DUMP_STACK 65 71 66 72 cxios_date cxios_date_add_duration(cxios_date date_c, cxios_duration dur_c) 73 TRY 67 74 { 68 75 xios::CDate date = xios::CDate(getCalendar("cxios_date cxios_date_add_duration(cxios_date date_c, cxios_duration dur_c)"), 69 76 date_c.year, date_c.month, date_c.day, 70 77 date_c.hour, date_c.minute, date_c.second); 71 72 78 xios::CDuration dur( dur_c.year, dur_c.month, dur_c.day, dur_c.hour, dur_c.minute, dur_c.second, dur_c.timestep ); 73 79 xios::CDate res = date + dur; 74 80 return { res.getYear(), res.getMonth(), res.getDay(), res.getHour(), res.getMinute(), res.getSecond() }; 75 81 } 82 CATCH_DUMP_STACK 76 83 77 84 cxios_date cxios_date_sub_duration(cxios_date date_c, cxios_duration dur_c) 85 TRY 78 86 { 79 87 xios::CDate date = xios::CDate(getCalendar("cxios_date cxios_date_sub_duration(cxios_date date_c, cxios_duration dur_c)"), … … 85 93 return { res.getYear(), res.getMonth(), res.getDay(), res.getHour(), res.getMinute(), res.getSecond() }; 86 94 } 95 CATCH_DUMP_STACK 87 96 88 97 cxios_duration cxios_date_sub(cxios_date date1_c, cxios_date date2_c) 98 TRY 89 99 { 90 100 xios::CDate date1 = xios::CDate(getCalendar("cxios_duration cxios_date_sub(cxios_date date1_c, cxios_date date2_c)"), … … 97 107 return { res.year, res.month, res.day, res.hour, res.minute, res.second, res.timestep }; 98 108 } 109 CATCH_DUMP_STACK 99 110 100 111 bool cxios_date_eq(cxios_date date1_c, cxios_date date2_c) 112 TRY 101 113 { 102 114 xios::CDate date1 = xios::CDate(getCalendar("bool cxios_date_eq(cxios_date date1_c, cxios_date date2_c)"), … … 108 120 return (date1 == date2); 109 121 } 122 CATCH_DUMP_STACK 110 123 111 124 bool cxios_date_neq(cxios_date date1_c, cxios_date date2_c) 125 TRY 112 126 { 113 127 xios::CDate date1 = xios::CDate(getCalendar("bool cxios_date_eq(cxios_date date1_c, cxios_date date2_c)"), … … 119 133 return (date1 != date2); 120 134 } 135 CATCH_DUMP_STACK 121 136 122 137 bool cxios_date_lt(cxios_date date1_c, cxios_date date2_c) 138 TRY 123 139 { 124 140 xios::CDate date1 = xios::CDate(getCalendar("bool cxios_date_eq(cxios_date date1_c, cxios_date date2_c)"), … … 130 146 return (date1 < date2); 131 147 } 148 CATCH_DUMP_STACK 132 149 133 150 bool cxios_date_le(cxios_date date1_c, cxios_date date2_c) 151 TRY 134 152 { 135 153 xios::CDate date1 = xios::CDate(getCalendar("bool cxios_date_eq(cxios_date date1_c, cxios_date date2_c)"), … … 141 159 return (date1 <= date2); 142 160 } 161 CATCH_DUMP_STACK 143 162 144 163 bool cxios_date_gt(cxios_date date1_c, cxios_date date2_c) 164 TRY 145 165 { 146 166 xios::CDate date1 = xios::CDate(getCalendar("bool cxios_date_eq(cxios_date date1_c, cxios_date date2_c)"), … … 152 172 return (date1 > date2); 153 173 } 174 CATCH_DUMP_STACK 154 175 155 176 bool cxios_date_ge(cxios_date date1_c, cxios_date date2_c) 177 TRY 156 178 { 157 179 xios::CDate date1 = xios::CDate(getCalendar("bool cxios_date_eq(cxios_date date1_c, cxios_date date2_c)"), … … 163 185 return (date1 >= date2); 164 186 } 187 CATCH_DUMP_STACK 165 188 166 189 int cxios_date_get_second_of_year(cxios_date date_c) 190 TRY 167 191 { 168 192 xios::CDate date = xios::CDate(getCalendar("int cxios_date_get_second_of_year(cxios_date date_c)"), … … 171 195 return date.getSecondOfYear(); 172 196 } 197 CATCH_DUMP_STACK 173 198 174 199 double cxios_date_get_day_of_year(cxios_date date_c) 200 TRY 175 201 { 176 202 xios::CDate date = xios::CDate(getCalendar("int cxios_date_get_day_of_year(cxios_date date_c)"), … … 179 205 return date.getDayOfYear(); 180 206 } 207 CATCH_DUMP_STACK 181 208 182 209 double cxios_date_get_fraction_of_year(cxios_date date_c) 210 TRY 183 211 { 184 212 xios::CDate date = xios::CDate(getCalendar("int cxios_date_get_fraction_of_year(cxios_date date_c)"), … … 187 215 return date.getFractionOfYear(); 188 216 } 217 CATCH_DUMP_STACK 189 218 190 219 int cxios_date_get_second_of_day(cxios_date date_c) 220 TRY 191 221 { 192 222 xios::CDate date = xios::CDate(getCalendar("int cxios_date_get_second_of_day(cxios_date date_c)"), … … 195 225 return date.getSecondOfDay(); 196 226 } 227 CATCH_DUMP_STACK 197 228 198 229 double cxios_date_get_fraction_of_day(cxios_date date_c) 230 TRY 199 231 { 200 232 xios::CDate date = xios::CDate(getCalendar("int cxios_date_get_fraction_of_day(cxios_date date_c)"), … … 203 235 return date.getFractionOfDay(); 204 236 } 237 CATCH_DUMP_STACK 205 238 } // extern "C"
Note: See TracChangeset
for help on using the changeset viewer.