Skip to content

Commit

Permalink
Прочие оптимизации
Browse files Browse the repository at this point in the history
  • Loading branch information
anyks committed Sep 10, 2020
1 parent c923483 commit 789011c
Show file tree
Hide file tree
Showing 9 changed files with 182 additions and 73 deletions.
2 changes: 2 additions & 0 deletions ChangeLog.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
# [Change Log](https://github.com/anyks/asc/archive/release.tar.gz)

## [1.0.2](https://github.com/anyks/asc/archive/v1.0.2.tar.gz) Other optimization

## [1.0.1](https://github.com/anyks/asc/archive/v1.0.1.tar.gz) Bug fixes

## [1.0.0](https://github.com/anyks/asc/archive/v1.0.0.tar.gz) Creating a repository
4 changes: 2 additions & 2 deletions app/asc.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -3389,7 +3389,7 @@ int main(int argc, char * argv[]) noexcept {
// Если адрес скрипта получен
if((value = env.get("word-script")) != nullptr) toolkit.setWordScript(value);
// Выполняем инициализацию алгоритма сглаживания
if(env.is("smoothing")) {
if(env.is("smoothing")){
// Дополнительный коэффициент алгоритма сглаживания
double mod = 0.0;
// Если алгоритм сглаживания ConstDiscount или AddSmooth, запрашиваем дополнительные параметры
Expand Down Expand Up @@ -3442,7 +3442,7 @@ int main(int argc, char * argv[]) noexcept {
);
// Устанавливаем путь назначения
if((value = env.get("train-intermed-dest")) != nullptr) collector.setDest(value);
// Выполняем чтение данных файла
// Выполняем чтение данных каталога
collector.readDir(path, ext);
// Иначе выполняем сборку обычным способом
} else {
Expand Down
2 changes: 1 addition & 1 deletion app/asc.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
// Название языковой модели
#define ANYKS_ASC_NAME "asc"
// Версия приложения
#define ANYKS_ASC_VERSION "1.0.1"
#define ANYKS_ASC_VERSION "1.0.2"
// Версия словаря
#define ANYKS_ASC_DICT_VERSION "1.0.0"
// Автор приложения
Expand Down
9 changes: 8 additions & 1 deletion include/ascb.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -65,6 +65,8 @@ namespace anyks {
map <wchar_t, wchar_t> altLetters;
// Список альтернативных слов
unordered_map <string, string> altWords;
// Функция прогресс бара
function <void (const wstring &, const u_short)> progressFn = nullptr;
private:
// Объект языковой модели
alm_t * alm = nullptr;
Expand Down Expand Up @@ -177,11 +179,16 @@ namespace anyks {
* @param filename адрес файла словаря
*/
void setFilename(const string & filename) noexcept;
/**
* setProgressFn Метод установки внешнего прогресс-бара
* @param fn функция внешнего прогресс-бара
*/
void setProgressFn(function <void (const wstring &, const u_short)> fn) noexcept;
public:
/**
* ASCb Конструктор
*/
ASCb() noexcept {};
ASCb() noexcept;
/**
* ASCb Конструктор
* @param filename адрес файла словаря
Expand Down
11 changes: 11 additions & 0 deletions include/dict.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -220,6 +220,17 @@ namespace anyks {
* @param words список идентификаторов слов для добавления
*/
void setUWords(const map <size_t, size_t> & words) noexcept;
public:
/**
* setLMethod Метод установки функции получения леммы
* @param fn функция для установки
*/
void setLMethod(stemmer_t::stemming_t fn) noexcept;
/**
* setVMethod Метод установки функции подбора вариантов
* @param fn функция для установки
*/
void setVMethod(stemmer_t::variants_t fn) noexcept;
public:
/**
* setALM Метод установки языковой модели
Expand Down
13 changes: 7 additions & 6 deletions include/stemmer.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -37,8 +37,9 @@ namespace anyks {
private:
// Мютекс для блокировки потока
mutable mutex locker;
public:
// Тип функции для извлечения леммы
typedef function <const wstring (const wstring &, const wstring &)> lemma_t;
typedef function <const wstring (const wstring &, const wstring &)> stemming_t;
// Тип функции для подбора вариантов слова
typedef function <const list <wstring> (const wstring &, const wstring &)> variants_t;
private:
Expand All @@ -48,7 +49,7 @@ namespace anyks {
size_t variantsScript = 0;
private:
// Функция для получения леммы
lemma_t lemmaFn = nullptr;
stemming_t lemmaFn = nullptr;
// Функция для подбора вариантов слова
variants_t variantsFn = nullptr;
private:
Expand All @@ -67,15 +68,15 @@ namespace anyks {
const bool check(const wstring & word) const noexcept;
public:
/**
* setLFunction Метод установки функции получения леммы
* setLMethod Метод установки функции получения леммы
* @param fn функция для установки
*/
void setLFunction(lemma_t fn) noexcept;
void setLMethod(stemming_t fn) noexcept;
/**
* setVFunction Метод установки функции подбора вариантов
* setVMethod Метод установки функции подбора вариантов
* @param fn функция для установки
*/
void setVFunction(variants_t fn) noexcept;
void setVMethod(variants_t fn) noexcept;
/**
* setLScript Метод установки скрипта лемматизатора
* @param script python скрипт для установки
Expand Down
Loading

0 comments on commit 789011c

Please sign in to comment.