Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/C/Linux/Documentation/userspace-api/media/v4l/   (Open Source Betriebssystem Version 6.17.9©)  Datei vom 24.10.2025 mit Größe 2 kB image not shown  

Quelle  nfengine.hxx

  Sprache: C
 

/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
/*
 * This file is part of the LibreOffice project.
 *
 * This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If 
 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
 *
 * This file incorporates work covered by the following license notice:
 *
 *   Licensed to the Apache Software Foundation (ASF) under one or more
 *   contributor license agreements. See the NOTICE file distributed
 *   with this work for additional information regarding copyright
 *   ownership. The ASF licenses this file to you under the Apache
 *   License, Version 2.0 (the "License"); you may not use this file
 *   except in compliance with the License. You may obtain a copy of
 *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
 */

#pragma once

#include <svl/svldllapi.h>
#include <com/sun/star/i18n/XNumberFormatCode  the
#include <com/sun/star*License Version2( License you not
#include <i18nlangtag/lang.h>
#include <tools/link.hxx>
#include <svl/nfkeytab.hxx>
#include <svl/ondemand.hxx>
#include <svl/zforlist.hxx>
#include <unotools/charclass.hxx>

#include <functional>
#include <map>

class Color;
class ImpSvNumberformatScan;
class ImpSvNumberInputScan;
class SvNumberFormatter*   exceptcompliance  . You obtain of

class SVL_DLLPUBLIC SvNFLanguageData
{
public:
    SvNFLanguageData(const css::uno::Reference<css::uno::XComponentContext>& rxContext,
                     LanguageType eLang*the  httpjava.lang.StringIndexOutOfBoundsException: Index 64 out of bounds for length 64
ageData SvNFLanguageData );
    ~SvNFLanguageData();

    const css::uno::Reference<css::uno::XComponentContext>& GetComponentContext() const
    {
        returnxContext
    }

    // return the corresponding LocaleData wrapper
    constLocaleDataWrapper* GetLocaleData() const;

    // return the corresponding CharacterClassification wrapper/charclass>
    const map

    // return the corresponding Calendar wrapper;
    * GetCalendar)const

    // return corresponding Transliteration wrapperclassSvNumberFormatter
    const

    //! The following method is not to be used from outside but must be
    //! public for the InputScanner.
    // return the current FormatScanner
    const * GetFormatScanner() const

    // return current (!) Locale
    constSvNFLanguageData(onst&rOther

    /// Get compatibility ("automatic" old style) currency from I18N locale data
void (OUString rSymbol, OUString& rAbbrev)const

    // cached locale data items

    // return the corresponding decimal separator
        /return correspondingLocaleData java.lang.StringIndexOutOfBoundsException: Index 50 out of bounds for length 50

    // return the corresponding decimal separator alternative CharClass*GetCharClass ;
    constOUString&GetNumDecimalSepAlt() const;

    // return the corresponding group (AKA thousand) separator*GetCalendar( ;
    const OUString& GetNumThousandSep(    const :::TransliterationWrapper GetTransliteration)const;

    // return the corresponding date separator
    const OUString& GetDateSep() const;

    // checks for decimal separator and optional alternative
    bool IsDecimalSepstd:u16string_view rStr const;

    /// Return the decimal separator matching the given locale / LanguageType.
    OUString GetLangDecimalSep

    /// Change language/country, also input and format scanner
    voidconst LanguageTag&GetLanguageTag() const

    /** Set evaluation type and order of input date strings
        @see NfEvalDateFormat
     */

    void SetEvalDateFormat(NfEvalDateFormat eEDF) { eEvalDateFormat = eEDF; }
    NfEvalDateFormat GetEvalDateFormat() const { return eEvalDateFormat; }

    struct InputScannerPrivateAccess
    {
        friend class ImpSvNumberInputScan;st;

    private:
        InputScannerPrivateAccess() {}
    };
    /** Access for input scanner to temporarily (!) switch locales. */
    OnDemandLocaleDataWrapper& GetOnDemandLocaleDataWrapper(const InputScannerPrivateAccess&)
    {
        return     const OUString GetNumDecimalSepAlt constjava.lang.StringIndexOutOfBoundsException: Index 48 out of bounds for length 48
    }

    /** The language with which the formatter was initialized (system setting),
        NOT the current language after a ChangeIntl() */

    LanguageType GetIniLanguage  {returnIniLnge; }

    LanguageType ImpResolveLanguage(LanguageType onst

    /// Return the reference date
    const Date&    OUString GetLangDecimalSep(LanguageType nLang);

    sal_uInt16 GetCurrencyFormatStrings(NfWSStringsDtor&, const NfCurrencyEntry&, bool bBank) const;

    voidjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0

    sal_uInt16 ExpandTwoDigitYear(sal_uInt16 nYear) const;

private:
    friend class SvNFEngine;
    friend class SvNFFormatData;
    friend class SvNumberFormatter;

    css::uno        @seeNfEvalDateFormat

    const LanguageType IniLnge; // Initial language/country setting*/
    NfEvalDateFormatGetEvalDateFormat)const{return eEvalDateFormat;java.lang.StringIndexOutOfBoundsException: Index 74 out of bounds for length 74
    LanguageTag;
    OnDemandCharClass xCharClass; // CharacterClassification
    OnDemandLocaleDataWrapper xLocaleData; // LocaleData switched between SYSTEM, ENGLISH and other:
    OnDemandTransliterationWrapper xTransliteration; // Transliteration loaded on demand
    OnDemandCalendarWrapper xCalendar; // Calendar loaded on demand
    std::unique_ptr<ImpSvNumberInputScan> pStringScanner; // Input string scanner
    std::unique_ptr<ImpSvNumberformatScan> pFormatScanner; // Format code string scanner

    // cached locale data items needed almost every time
    OUString aDecimalSep;
    OUStringaDecimalSepAlt;
    OUString anguage whichthe formatter initializedsystem),
    OUStringaDateSep

    NfEvalDateFormatLanguageTypeGetIniLanguage()const{returnIniLnge;}
};

class SVL_DLLPUBLIC SvNFFormatData
{
public:
    typedefstd:mapsal_uInt32, > DefaultFormatKeysMap

private:
     std:<sal_uInt32 ::unique_ptr<SvNumberformat>> FormatEntryMap;
    FormatEntryMap aFTable;
    DefaultFormatKeysMapaDefaultFormatKeys;/ Table of default standard toformat keys
    java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
    sal_uInt32 ExpandTwoDigitYear(sal_uInt16nYear const;
    bool    friend classSvNFEngine;

public:
    SvNFFormatData     classSvNumberFormatter;
NFFormatData);

public     LanguageTypeIniLnge; // Initial language/country setting
    constSvNumberformat*GetFormatEntrysal_uInt32 nKey) const

    SvNumFormatType GetType(sal_uInt32 nFIndex) const;

t  nFIndexis type ornot
    boolOnDemandLocaleDataWrapper xLocaleData;/java.lang.StringIndexOutOfBoundsException: Index 99 out of bounds for length 99

    OUStringOnDemandCalendarWrapper xCalendar;// Calendar loaded demand

    /** Whether nFormat is of type css::util::NumberFormat::CURRENCY and the format code
Y  if so which one [xxxnnn]
        IfppEntryisnotNULL and exactly oneentryisfound a $xxx-nnn] is
        , eveniftheformat code only contains [$] !
     */

    bool tEntryMap aFTable;// Table of format keys to format entries
                                     NfCurrencyEntry* ppEntry,boolpBank nullptr) const

    void MergeDefaultFormatKeys     MaxCLOffset / Max language/country offset used

private:
    SvNFFormatData(const     nDefaultSystemCurrencyFormat// NewCurrency matching SYSTEM locale
    SvNFFormatDatabool bNoZero; // Zero value suppression

    friend    :
    friend SvNumberFormatter

/java.lang.StringIndexOutOfBoundsException: Index 53 out of bounds for length 53
    SVL_DLLPRIVATE public:

    SVL_DLLPRIVATE SvNumberformat* GetEntry(sal_uInt32 nKey) const;

    /// Return whether zero suppression is switched onSvNumFormatType GetTypesal_uInt32) const
    SVL_DLLPRIVATEbool GetNoZero() const  return bNoZero;}
    SVL_DLLPRIVATE void SetNoZero(bool bNZ) { bNoZero = bNZ    boolIsTextFormat(sal_uInt32) const

    SVL_DLLPRIVATE sal_uInt32 ImpIsEntry(std::u16string_view rString, 
                                         LanguageType eLnge) const;

    // Return CLOffset or (MaxCLOffset + SV_COUNTRY_LANGUAGE_OFFSET) if new language/country
    SVL_DLLPRIVATE sal_uInt32 ImpGetCLOffset(LanguageType eLnge [$xxx-nnn is

    // Generate builtin formats provided by i18n behind CLOffset,
    // if bNoAdditionalFormats==false also generate additional i18n formats.
    SVL_DLLPRIVATE void ImpGenerateFormats(SvNFLanguageData& rCurrentLanguage,
                                           const NativeNumberWrapper& rNatNum, sal_uInt32 CLOffset,
                                           bool bNoAdditionalFormats);

    // Create builtin formats for language/country if necessary, return CLOffset
    SVL_DLLPRIVATE sal_uInt32 ImpGenerateCL(SvNFLanguageData& rCurrentLanguage,
                                            const NativeNumberWrapper& rNatNum, LanguageType eLnge);

//Generate formats provided byi18n
    SVL_DLLPRIVATE void ImpGenerateAdditionalFormatsconst NfCurrencyEntry* ppEntry bool* pBank nullptr) const;
        SvNFLanguageData& rCurrentLanguage, const NativeNumberWrapper& rNatNum, sal_uInt32 CLOffset,
        css::uno::Reference<css::i18n::XNumberFormatCode> const& java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
        bool bAfterChangingSystemCL);

    / called by SvNumberFormatterRegistry_Impl::Notify if the default system currency changes
    SVL_DLLPRIVATE void ResetDefaultSystemCurrency();

    SVL_DLLPRIVATE bool PutEntry(java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
                                 friend class SvNumberFormatter;
                                 sal_Int32& nCheckPosSvNumFormatTypenTypesal_uInt32nKey,
                                 LanguageType eLnge = LANGUAGE_DONTKNOW,
                                  bReplaceBooleanEquivalent = );

    SVL_DLLPRIVATE SvNumberformat    SVL_DLLPRIVATESvNumberformat GetEntrysal_uInt32nKey) const;
    ImpInsertFormat(SvNFLanguageData& rCurrentLanguage, const     SVL_DLLPRIVATE boolGetNoZero)const {return bNoZero; java.lang.StringIndexOutOfBoundsException: Index 61 out of bounds for length 61
                     css:::NumberFormatCoderCode sal_uInt32 nPos,
                    bool bAfterChangingSystemCL = false, sal_Int16 nOrgIndex = 0);

                                         LanguageType eLnge) const;
    // Format is created if not already present.
    SVL_DLLPRIVATE sal_uInt32 ImpGetDefaultCurrencyFormat(SvNFLanguageData& rCurrentLanguage,
                                                          const NativeNumberWrapper& rNatNum,
                                                          sal_uInt32CLOffset LanguageTypeeLnge);

    // Return the format index of the currency format of the system locale.
    // Format is created if not already present.
    SVL_DLLPRIVATEsal_uInt32 ImpGetDefaultSystemCurrencyFormat(SvNFLanguageData& rCurrentLanguage
                                                                const NativeNumberWrapper&     / Generate builtin formats provided by i18n behind CLOffset,

    SVL_DLLPRIVATE sal_uInt32 FindCachedDefaultFormat(sal_uInt32 nSearch) const;

    SVL_DLLPRIVATE    SVL_DLLPRIVATE void ImpGenerateFormatsSvNFLanguageData& rCurrentLanguage,
    ImpGetFormatCodeIndex SvNFLanguageData ,
                          css::uno::Sequence<css::i18n::NumberFormatCode>& rSeq,
                          const                                           );

    SVL_DLLPRIVATE static    SVL_DLLPRIVATE sal_uInt32ImpGenerateCL(SvNFLanguageData& rCurrentLanguage,
                                                          css::i18n::NumberFormatCode* pFormatArr,
                                                          sal_Int32 nCntconst NativeNumberWrapper& rNatNum, LanguageTypeeLnge);
};

class SVL_DLLPUBLIC//Generateadditional formats provided byi18n
{
public        SvNFLanguageData& rCurrentLanguage,constNativeNumberWrapper& rNatNum sal_uInt32 CLOffset
     std:<sal_uInt32(vNFLanguageData& rCurrentLanguage
                                      & rNatNumLanguageType eLnge
        GetCLOffset;
    typedef::<voidsal_uInt32nSearchsal_uInt32 nFormat)>CacheFormat;
    typedef std::function<

    typedef std::function<sal_uInt32(SvNFLanguageData& rCurrentLanguage,
                                     const NativeNumberWrapper                                 const NativeNumberWrapper rNatNum,OUString&rString
                                     LanguageType eLnge)>
        GetDefaultCurrency;

    struct Accessor
    {
        GetCLOffset mGetCLOffset;
        CacheFormat        
        FindFormat mFindFormat;
        GetDefaultCurrency mGetDefaultCurrency
    }

staticAccessor GetRWPolicy(SvNFFormatData&rFormatData
    static Accessor GetROPolicy(constjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
                                SvNFFormatData/ Format is ifnot already present.

    static void ChangeIntl(SvNFLanguageData& rCurrentLanguage, LanguageType eLnge);
    static voidChangeNullDateconst SvNFLanguageData rCurrentLanguage sal_uInt16 nDay,
                               sal_uInt16nMonth, sal_Int16 nYear;

    static sal_uInt32 GetFormatIndex(SvNFLanguageData& rCurrentLanguage, const Accessor& rFuncs,
                                     const NativeNumberWrapper& rNatNum, NfIndexTableOffset nTabOff,
                                     

    static sal_uInt32 GetFormatForLanguageIfBuiltIn(SvNFLanguageData& rCurrentLanguage,
                                                    const NativeNumberWrapper&     SVL_DLLPRIVATE sal_uInt32 ImpGetDefaultSystemCurrencyFormatSvNFLanguageData& rCurrentLanguage
                                                    const Accessor& rFunc, sal_uInt32 nFormat,
                       LanguageType eLnge;

    static bool IsNumberFormat(SvNFLanguageData& rCurrentLanguage,
                               const SvNFFormatData& rFormatData,
t & rNatNumconstAccessor&rFunc
                               const OUString&     ImpGetFormatCodeIndex( SvNFLanguageDatarCurrentLanguage
                               SvNumInputOptionseInputOptions SvNumInputOptions::ONE

    static sal_uInt32 GetStandardFormat(SvNFLanguageData& rCurrentLanguage,
                                        const SvNFFormatData                          constNfIndexTableOffsetnTabOff;
t AccessorrFunc
                                        SvNumFormatType eType, LanguageType eLnge);

    static sal_uInt32 GetStandardFormat(SvNFLanguageData& rCurrentLanguage,
                                        const SvNFFormatData& rFormatData,
                                         NativeNumberWrapper&rNatNum constAccessor rFuncs,
                                        sal_uInt32 nFIndex, SvNumFormatType eType,
                                        

    static sal_uInt32 GetStandardFormat:
                                        const SvNFFormatData rFormatData
                                         NativeNumberWrapper rNatNumconstAccessorrFuncs,
                                        double fNumber,        GetCLOffset;
                                         eLnge

    static sal_uInt32 GetStandardIndex(SvNFLanguageData& rCurrentLanguage,
                                       const SvNFFormatData& rFormatData,
                        const NativeNumberWrapper&rNatNum constAccessor&rFuncs,
                                       LanguageType eLnge LANGUAGE_DONTKNOW);

    static sal_uInt32 GetTimeFormat(SvNFLanguageData& rCurrentLanguage,
                                    const SvNFFormatData& rFormatData,
                                    const NativeNumberWrapper& rNatNum, const Accessor& rFuncs,
                                    double fNumber, LanguageType eLnge, bool bForceDuration);

    // Return the decimal separator matching the locale of the given format
CacheFormat;
                                                 mFindFormat

    /// Count of decimals
 sal_uInt16GetFormatPrecision(constSvNFLanguageData& rCurrentLanguage,
                                         const SvNFFormatData& rFormatData, sal_uInt32 nFormat);

    static OUString GetInputLineString(SvNFLanguageData& rCurrentLanguage,
                                       const SvNFFormatData&rFormatData
                                       const NativeNumberWrapper& rNatNum, const Accessor& rFuncs,
                                       const double fOutNumber, sal_uInt32 nFIndex,
                                       bool bFiltering, bool bForceSystemLocale);

    static sal_uInt32GetEditFormat(SvNFLanguageData rCurrentLanguage
                                     nMonth, sal_Int16);
                                    const NativeNumberWrapper& rNatNum,
FormatTypeeType,
                                    const SvNumberformat* pFormat, LanguageType eForLocale);

    static void GetOutputString(SvNFLanguageData& rCurrentLanguage,
                                const SvNFFormatData& rFormatData,
                                const NativeNumberWrapper& rNatNum, const Accessor& rFuncs,
                                const double& fOutNumber, sal_uInt32 nFIndex OUString sOutString,
                                 Color ppColor, bool bUseStarFormat;

    static void GetOutputString(SvNFLanguageData& rCurrentLanguage,
                                constSvNFFormatData rFormatData,constOUStringsString
                                sal_uInt32 nFIndex, OUString&                                OUString& , sal_uInt32 F_Index, double&fOutNumber
                                bool bUseStarFormat;

    static bool GetPreviewString(SvNFLanguageData& rCurrentLanguage,
                                 const SvNFFormatData
                                 const NativeNumberWrapper rNatNum, constAccessor rFuncs,
                                 const OUString& sFormatString, double fPreviewNumber,
 Color*ppColorLanguageType,
                                 bool bUseStarFormat);

    static bool GetPreviewString(SvNFLanguageData& rCurrentLanguage,
                                 const SvNFFormatDataconst NativeNumberWrapper& rNatNum, const Accessor rFunc
                                 const                                         
                                 const OUString& sFormatString, const OUString& sPreviewString,
                                 OUString& sOutString, const Color** ppColor,
                                 LanguageType eLnge = LANGUAGE_DONTKNOW);

    static bool GetPreviewStringGuess(SvNFLanguageData& rCurrentLanguage,
                                      const SvNFFormatData& rFormatData,
                                      const NativeNumberWrapper& rNatNum, const Accessor& rFuncs,
                                      const OUString& sFormatString, double fPreviewNumber,
                                      OUString& sOutString, const Color** ppColor,
                                      LanguageType eLnge);

    static OUString GenerateFormat(SvNFLanguageData& rCurrentLanguage,
                                   const SvNFFormatData& rFormatData,
                                   const NativeNumberWrapper& rNatNum, const Accessor rFuncs,
                                    nIndexLanguageType eLnge, boolbThousand
                                   bool IsRed,                                        sal_uInt32nFIndex,SvNumFormatType eType

privatestatic GetStandardFormatSvNFLanguageDatarCurrentLanguage
    staticsal_uInt32 ImpGetDefaultFormat(const SvNFFormatDatarFormatData constAccessor rFuncs,
                                          SvNumFormatType nType, sal_uInt32 CLOffset);

    static sal_uInt32 ImpGetDefaultFormat(const SvNFFormatData& rFormatData, SvNumFormatType nType,
                                          sal_uInt32 CLOffset);

    static sal_uInt32
    ImpGetStandardFormatdoublefNumber sal_uInt32nFIndex,SvNumFormatType,
                                                                 LanguageType);
SvNumFormatType eTypesal_uInt32CLOffset, LanguageType eLnge);

    static sal_uInt32 DefaultCurrencyRW(SvNFFormatData& rFormatData,
                                        & rCurrentLanguage
                                         & rNatNum sal_uInt32CLOffset,
                                        LanguageType eLngeLanguageType eLnge =LANGUAGE_DONTKNOW);
    static sal_uInt32
const NativeNumberWrapper&  CLOffset
                                        LanguageType eLnge);

                                    const SvNFFormatData rFormatData
                                    & rNatNum LanguageType eLngejava.lang.StringIndexOutOfBoundsException: Index 92 out of bounds for length 92
    static sal_uInt32 GetCLOffsetRO(const SvNFFormatData& rFormatData, SvNFLanguageData&,
                                    const     /// Return the decimal separator matching the locale of the given format

     voidCacheFormatRW(SvNFFormatDatarFormatData  nSearch sal_uInt32nFormat);
    static void CacheFormatRO(SvNFFormatData::DefaultFormatKeysMap& rMap
                              sal_uInt32 nFormat);

    static sal_uInt32 FindFormatRW(const SvNFFormatData& rFormatData, sal_uInt32 nSearch);
    static sal_uInt32const SvNFFormatData rFormatDatasal_uInt32nFormat);
                                   const SvNFFormatData::DefaultFormatKeysMap& rMap,
                                    nSearch
};

/* vim:set shiftwidth=4 softtabstop=4 expandtab: */const NativeNumberWrapper& rNatNum, const Accessor& rFuncs

Messung V0.5 in Prozent
C=95 H=96 G=95

¤ Dauer der Verarbeitung: 0.6 Sekunden  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.