annotate modules/javafx.web/src/main/native/Source/ThirdParty/icu/source/i18n/tzgnames.h @ 11038:20a8447c71c6

8207159: Update ICU to version 62.1 Reviewed-by: mbilla, kcr, ghb
author arajkumar
date Fri, 24 Aug 2018 15:06:40 +0530
parents fee4ef5c87df
children
rev   line source
arajkumar@11038 1 // © 2016 and later: Unicode, Inc. and others.
arajkumar@11038 2 // License & terms of use: http://www.unicode.org/copyright.html
ghb@10550 3 /*
ghb@10550 4 *******************************************************************************
ghb@10550 5 * Copyright (C) 2011-2012, International Business Machines Corporation and *
ghb@10550 6 * others. All Rights Reserved. *
ghb@10550 7 *******************************************************************************
ghb@10550 8 */
ghb@10550 9 #ifndef __TZGNAMES_H
ghb@10550 10 #define __TZGNAMES_H
ghb@10550 11
ghb@10550 12 /**
ghb@10550 13 * \file
ghb@10550 14 * \brief C API: Time zone generic names classe
ghb@10550 15 */
ghb@10550 16
ghb@10550 17 #include "unicode/utypes.h"
ghb@10550 18
ghb@10550 19 #if !UCONFIG_NO_FORMATTING
ghb@10550 20
ghb@10550 21 #include "unicode/locid.h"
ghb@10550 22 #include "unicode/unistr.h"
ghb@10550 23 #include "unicode/tzfmt.h"
ghb@10550 24 #include "unicode/tznames.h"
ghb@10550 25
ghb@10550 26 U_CDECL_BEGIN
ghb@10550 27
ghb@10550 28 typedef enum UTimeZoneGenericNameType {
ghb@10550 29 UTZGNM_UNKNOWN = 0x00,
ghb@10550 30 UTZGNM_LOCATION = 0x01,
ghb@10550 31 UTZGNM_LONG = 0x02,
ghb@10550 32 UTZGNM_SHORT = 0x04
ghb@10550 33 } UTimeZoneGenericNameType;
ghb@10550 34
ghb@10550 35 U_CDECL_END
ghb@10550 36
ghb@10550 37 U_NAMESPACE_BEGIN
ghb@10550 38
ghb@10550 39 class TimeZone;
ghb@10550 40 struct TZGNCoreRef;
ghb@10550 41
ghb@10550 42 class U_I18N_API TimeZoneGenericNames : public UMemory {
ghb@10550 43 public:
ghb@10550 44 virtual ~TimeZoneGenericNames();
ghb@10550 45
ghb@10550 46 static TimeZoneGenericNames* createInstance(const Locale& locale, UErrorCode& status);
ghb@10550 47
ghb@10550 48 virtual UBool operator==(const TimeZoneGenericNames& other) const;
ghb@10550 49 virtual UBool operator!=(const TimeZoneGenericNames& other) const {return !operator==(other);};
ghb@10550 50 virtual TimeZoneGenericNames* clone() const;
ghb@10550 51
ghb@10550 52 UnicodeString& getDisplayName(const TimeZone& tz, UTimeZoneGenericNameType type,
ghb@10550 53 UDate date, UnicodeString& name) const;
ghb@10550 54
ghb@10550 55 UnicodeString& getGenericLocationName(const UnicodeString& tzCanonicalID, UnicodeString& name) const;
ghb@10550 56
ghb@10550 57 int32_t findBestMatch(const UnicodeString& text, int32_t start, uint32_t types,
ghb@10550 58 UnicodeString& tzID, UTimeZoneFormatTimeType& timeType, UErrorCode& status) const;
ghb@10550 59
ghb@10550 60 private:
ghb@10550 61 TimeZoneGenericNames();
ghb@10550 62 TZGNCoreRef* fRef;
ghb@10550 63 };
ghb@10550 64
ghb@10550 65 U_NAMESPACE_END
ghb@10550 66 #endif
ghb@10550 67 #endif