Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(390)

Unified Diff: third_party/liblouis/nacl_wrapper/liblouis_wrapper.h

Issue 67283007: Build liblouis_nacl using gyp. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@lkgr
Patch Set: Don't copy build artifacts to final location (defered to the cl that lands all of chromevox). Created 7 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/liblouis/nacl_wrapper/liblouis_wrapper.h
diff --git a/third_party/liblouis/nacl_wrapper/liblouis_wrapper.h b/third_party/liblouis/nacl_wrapper/liblouis_wrapper.h
new file mode 100644
index 0000000000000000000000000000000000000000..dac2b4ae2054d01a410c9077e068342b7be7580b
--- /dev/null
+++ b/third_party/liblouis/nacl_wrapper/liblouis_wrapper.h
@@ -0,0 +1,58 @@
+// Copyright 2013 Google Inc.
+//
+// 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.
+
+#ifndef LIBLOUIS_NACL_LIBLOUIS_WRAPPER_H_
+#define LIBLOUIS_NACL_LIBLOUIS_WRAPPER_H_
+
+#include <string>
+
+#include "base/basictypes.h"
+#include "translation_params.h"
+#include "translation_result.h"
+
+namespace liblouis_nacl {
+
+// Encapsulates logic for interacting (synchronously) with liblouis.
+//
+// This class is *not* thread-safe; it should be used only from one thread.
+// Since the underlying library is not reentrant, only one instance should be
+// in use at a time.
+//
+// All input strings should be represented in UTF-8.
+class LibLouisWrapper {
+ public:
+ LibLouisWrapper();
+ ~LibLouisWrapper();
+
+ // Returns one of the paths where tables may be searched for.
+ const char* tables_dir() const;
+
+ // Loads, checks, and compiles the requested table.
+ // Returns true on success.
+ bool CheckTable(const std::string& table_name);
+
+ // Translates the given text and cursor position into braille.
+ bool Translate(const TranslationParams& params, TranslationResult* out);
+
+ // Translates the given braille cells into text.
+ bool BackTranslate(const std::string& table_name,
+ const std::vector<unsigned char>& cells, std::string* out);
+
+ private:
+ DISALLOW_COPY_AND_ASSIGN(LibLouisWrapper);
+};
+
+} // namespace liblouis_nacl
+
+#endif // LIBLOUIS_NACL_LIBLOUIS_WRAPPER_H_

Powered by Google App Engine
This is Rietveld 408576698