00001
00002
00003
00004
00005
00006
00007
00008 #ifndef UTMSCALE_H
00009 #define UTMSCALE_H
00010
00011 #include "unicode/utypes.h"
00012
00013 #if !UCONFIG_NO_FORMATTING
00014
00195 typedef enum UDateTimeScale {
00202 UDTS_JAVA_TIME = 0,
00203
00210 UDTS_UNIX_TIME,
00211
00218 UDTS_ICU4C_TIME,
00219
00226 UDTS_WINDOWS_FILE_TIME,
00227
00234 UDTS_DOTNET_DATE_TIME,
00235
00242 UDTS_MAC_OLD_TIME,
00243
00250 UDTS_MAC_TIME,
00251
00258 UDTS_EXCEL_TIME,
00259
00266 UDTS_DB2_TIME,
00267
00273 UDTS_MAX_SCALE
00274 } UDateTimeScale;
00275
00284 typedef enum UTimeScaleValue {
00293 UTSV_UNITS_VALUE = 0,
00294
00303 UTSV_EPOCH_OFFSET_VALUE,
00304
00313 UTSV_FROM_MIN_VALUE,
00314
00323 UTSV_FROM_MAX_VALUE,
00324
00333 UTSV_TO_MIN_VALUE,
00334
00343 UTSV_TO_MAX_VALUE,
00344
00356 UTSV_EPOCH_OFFSET_PLUS_1_VALUE,
00357
00369 UTSV_EPOCH_OFFSET_MINUS_1_VALUE,
00370
00381 UTSV_UNITS_ROUND_VALUE,
00382
00393 UTSV_MIN_ROUND_VALUE,
00394
00405 UTSV_MAX_ROUND_VALUE,
00406
00416 UTSV_MAX_SCALE_VALUE
00417 } UTimeScaleValue;
00418
00429 U_DRAFT int64_t U_EXPORT2
00430 utmscale_getTimeScaleValue(UDateTimeScale timeScale, UTimeScaleValue value, UErrorCode *status);
00431
00432
00433
00445 U_DRAFT int64_t U_EXPORT2
00446 utmscale_fromInt64(int64_t otherTime, UDateTimeScale timeScale, UErrorCode *status);
00447
00448
00449
00461 U_DRAFT int64_t U_EXPORT2
00462 utmscale_toInt64(int64_t universalTime, UDateTimeScale timeScale, UErrorCode *status);
00463
00464 #endif
00465
00466 #endif
00467