diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 19:33:14 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 19:33:14 +0000 |
commit | 36d22d82aa202bb199967e9512281e9a53db42c9 (patch) | |
tree | 105e8c98ddea1c1e4784a60a5a6410fa416be2de /toolkit/components/translation/cld2/internal/cldutil.h | |
parent | Initial commit. (diff) | |
download | firefox-esr-36d22d82aa202bb199967e9512281e9a53db42c9.tar.xz firefox-esr-36d22d82aa202bb199967e9512281e9a53db42c9.zip |
Adding upstream version 115.7.0esr.upstream/115.7.0esrupstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to '')
-rw-r--r-- | toolkit/components/translation/cld2/internal/cldutil.h | 80 |
1 files changed, 80 insertions, 0 deletions
diff --git a/toolkit/components/translation/cld2/internal/cldutil.h b/toolkit/components/translation/cld2/internal/cldutil.h new file mode 100644 index 0000000000..9712b30a96 --- /dev/null +++ b/toolkit/components/translation/cld2/internal/cldutil.h @@ -0,0 +1,80 @@ +// Copyright 2013 Google Inc. All Rights Reserved. +// +// Licensed 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 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +// +// Author: dsites@google.com (Dick Sites) +// +// Stuff used only by online detector, not used offline +// + +#ifndef I18N_ENCODINGS_CLD2_INTERNAL_NEW_CLDUTIL_H__ +#define I18N_ENCODINGS_CLD2_INTERNAL_NEW_CLDUTIL_H__ + +#include "cldutil_shared.h" +#include "scoreonescriptspan.h" +#include "tote.h" + +namespace CLD2 { + +// Score up to 64KB of a single script span in one pass +// Make a dummy entry off the end to calc length of last span +// Return offset of first unused input byte +int GetUniHits(const char* text, + int letter_offset, int letter_limit, + ScoringContext* scoringcontext, + ScoringHitBuffer* hitbuffer); + +// Score up to 64KB of a single script span, doing both delta-bi and +// distinct bis in one pass +void GetBiHits(const char* text, + int letter_offset, int letter_limit, + ScoringContext* scoringcontext, + ScoringHitBuffer* hitbuffer); + +// Score up to 64KB of a single script span in one pass +// Make a dummy entry off the end to calc length of last span +// Return offset of first unused input byte +int GetQuadHits(const char* text, + int letter_offset, int letter_limit, + ScoringContext* scoringcontext, + ScoringHitBuffer* hitbuffer); + +// Score up to 64KB of a single script span, doing both delta-octa and +// distinct words in one pass +void GetOctaHits(const char* text, + int letter_offset, int letter_limit, + ScoringContext* scoringcontext, + ScoringHitBuffer* hitbuffer); + +// Not sure if these belong here or in scoreonescriptspan.cc +int ReliabilityDelta(int value1, int value2, int gramcount); +int ReliabilityExpected(int actual_score_1kb, int expected_score_1kb); + +// Create a langprob packed value from its parts. +uint32 MakeLangProb(Language lang, int qprob); + + +void ProcessProbV2Tote(uint32 probs, Tote* tote); + +// Return score for a particular per-script language, or zero +int GetLangScore(uint32 probs, uint8 pslang); + +static inline int minint(int a, int b) {return (a < b) ? a: b;} +static inline int maxint(int a, int b) {return (a > b) ? a: b;} + +} // End namespace CLD2 + +#endif // I18N_ENCODINGS_CLD2_INTERNAL_NEW_CLDUTIL_H__ + + |