// // Latin9Encoding.h // // Library: Foundation // Package: Text // Module: Latin9Encoding // // Definition of the Latin9Encoding class. // // Copyright (c) 2004-2007, Applied Informatics Software Engineering GmbH. // and Contributors. // // SPDX-License-Identifier: BSL-1.0 // #ifndef Foundation_Latin9Encoding_INCLUDED #define Foundation_Latin9Encoding_INCLUDED #include "Poco/Foundation.h" #include "Poco/TextEncoding.h" namespace Poco { class Foundation_API Latin9Encoding : public TextEncoding /// ISO Latin-9 (8859-15) text encoding. /// /// Latin-9 is basically Latin-1 with the EURO sign plus /// some other minor changes. { public: Latin9Encoding(); ~Latin9Encoding(); const char * canonicalName() const; bool isA(const std::string & encodingName) const; const CharacterMap & characterMap() const; int convert(const unsigned char * bytes) const; int convert(int ch, unsigned char * bytes, int length) const; int queryConvert(const unsigned char * bytes, int length) const; int sequenceLength(const unsigned char * bytes, int length) const; private: static const char * _names[]; static const CharacterMap _charMap; }; } // namespace Poco #endif // Foundation_Latin9Encoding_INCLUDED