18393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius/*
28393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius*******************************************************************************
38393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius* Copyright (C) 2013, International Business Machines Corporation and         *
48393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius* others. All Rights Reserved.                                                *
58393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius*******************************************************************************
68393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius*
78393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius* File REGION_IMPL.H
88393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius*
98393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius*******************************************************************************
108393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius*/
118393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius
128393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius#ifndef __REGION_IMPL_H__
138393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius#define __REGION_IMPL_H__
148393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius
158393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius#include "unicode/utypes.h"
168393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius
178393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius#if !UCONFIG_NO_FORMATTING
188393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius
198393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius#include "uvector.h"
208393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius#include "unicode/strenum.h"
218393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius
228393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig CorneliusU_NAMESPACE_BEGIN
238393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius
248393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius
258393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Corneliusclass RegionNameEnumeration : public StringEnumeration {
268393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Corneliuspublic:
278393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius    RegionNameEnumeration(UVector *fNameList, UErrorCode& status);
288393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius    virtual ~RegionNameEnumeration();
298393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius    static UClassID U_EXPORT2 getStaticClassID(void);
308393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius    virtual UClassID getDynamicClassID(void) const;
318393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius    virtual const UnicodeString* snext(UErrorCode& status);
328393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius    virtual void reset(UErrorCode& status);
338393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius    virtual int32_t count(UErrorCode& status) const;
348393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Corneliusprivate:
358393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius    int32_t pos;
368393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius    UVector *fRegionNames;
378393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius};
388393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius
398393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig CorneliusU_NAMESPACE_END
408393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius
418393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius#endif
428393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius
438393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius#endif
44