core_plugin.h
3.47 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
//*****************************************************************
/*
VLibras: Automatic contents translator from Portuguese to LIBRAS
Copyright (c) 2015 Gustavo Sobral, Erickson Silva, Leonardo Araújo
VLibras-Core group at LAViD, Federal University of Paraiba
*/
//*****************************************************************
/**
* \file corePlugin.hpp
* \author Gustavo Sobral, Leonardo Araújo
* \date Janeiro 2015
*/
#ifndef COREPLUGIN_H_
#define COREPLUGIN_H_
#include <string>
#include <sstream>
#include <stdio.h>
#include <iostream>
#include <stdlib.h>
#include <unistd.h>
#include <sys/types.h>
#include <lavidlib/base/RuntimeException.h>
#include <curl/curl.h>
// install libjson
// sudo apt-get install libjson0 libjson0-dev
#include "py_tradutor.h"
#include "property.h"
#define SCRIPT_UPDATE_VLIBRAS "gksudo -m \"<b>Para continuar, você precisa se autenticar.</b>\" \"gnome-terminal --hide-menubar -x bash -c '/./opt/vlibras_desktop/script/update_vlibras.sh;'\""
#define SCRIPT_UPDATE_DICT "gksudo -m \"<b>Para continuar, você precisa se autenticar.</b>\" \"gnome-terminal --hide-menubar -x bash -c '/./opt/vlibras_desktop/script/update_dict.sh;'\""
#define SCRIPT_INSTALL_DICT "gksudo -m \"<b>Para continuar, você precisa se autenticar.</b>\" \"gnome-terminal --hide-menubar -x bash -c '/./opt/vlibras_desktop/script/dict_install.sh;'\""
// TODO
#define FILEPATH_CONFIG "config/vlibras.conf"
// TODO
#define ENDPOINT_UPDATE_ID "endpoint_update"
// TODO
#define DIC_PACKAGE "dicionario-vlibras"
// TODO
#define APP_PACKAGE "vlibras-desktop"
#define MAX_BUFFER_SELECTION 1024
#define REPLACE_CHARACTERS "\r\n"
#ifdef __cplusplus
extern "C" {
#endif
//PyTradutor *tradutor;
//int app_current_version, dict_current_version;
/** \brief Inicializa o ambiente core
*
* Inicia o ambiente necessário para execução das
* funcionalidades do VLibras core, instanciada como
* lib na aplicação vlibrasPlayer gerada pelo Unity.
*/
int coreInitialize();
/** \brief Executa a funcão core
*
* Pega o conteúdo presente no buffer do sistema (pasteboard)
* e aplica sobre a tradução (Português -> Glosa) do tradutor.
* \return Ponteiro para char com a glosa em lowercase resultante
* da tradução do coteúdo presente no buffer (pasteboard)
*/
const char* coreExecute();
/** \brief Finaliza o ambiente core
*
* Finaliza o ambiente montado para execução
* das funcionalidades do core na aplicação.
*/
int coreFinalize();
/** \brief ?
*
* \return ?
*/
int coreUpdateInstall_player();
/** \brief ?
*
* \return ?
*/
int coreUpdateInstall_dict();
/** \brief ?
*
* \return ?
*/
int coreUpdateCheck();
/** \brief ?
*
* \return ?
*/
char * get_text_selection();
/** \brief ?
*
* \return ?
*/
void remove_special_chars(std::string *_word, std::string _chars, char* new_char);
/** \brief ?
*
* \return ?
*/
static size_t writeDataCallback(
char *contents, size_t size, size_t nmemb, std::string *writer_data);
/** \brief ?
*
* \return ?
*/
std::string request_current_versions();
/** \brief ?
*
* \return ?
*/
int get_version_from_json(std::string json_message, std::string _key);
/** \brief ?
*
* \return ?
*/
int get_installed_version_deb_package(std::string _package_id);
/** \brief ?
*
* \return ?
*/
int get_version_from_string(std::string json_message, std::string _key);
#ifdef __cplusplus
}
#endif
#endif // COREPLUGIN_H_