FST
openfst-1.8.3
OpenFst Library
Main Page
Namespaces
Classes
Files
File List
File Members
src
fst
openfst-1.8.3
src
extensions
far
script-impl.cc
Go to the documentation of this file.
1
// Copyright 2005-2024 Google LLC
2
//
3
// Licensed under the Apache License, Version 2.0 (the 'License');
4
// you may not use this file except in compliance with the License.
5
// You may obtain a copy of the License at
6
//
7
// http://www.apache.org/licenses/LICENSE-2.0
8
//
9
// Unless required by applicable law or agreed to in writing, software
10
// distributed under the License is distributed on an 'AS IS' BASIS,
11
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
// See the License for the specific language governing permissions and
13
// limitations under the License.
14
//
15
// See www.openfst.org for extensive documentation on this weighted
16
// finite-state transducer library.
17
//
18
// Definitions and functions for invoking and using Far main functions that
19
// support multiple and extensible arc types.
20
21
#include <
fst/extensions/far/script-impl.h
>
22
23
#include <ios>
24
#include <string>
25
26
#include <
fst/log.h
>
27
#include <
fst/extensions/far/far.h
>
28
#include <fstream>
29
#include <
fst/fst.h
>
30
31
namespace
fst
{
32
namespace
script {
33
34
std::string
LoadArcTypeFromFar
(
const
std::string &far_source) {
35
FarHeader
hdr;
36
if
(!hdr.
Read
(far_source)) {
37
LOG
(ERROR) <<
"Error reading FAR: "
<< far_source;
38
return
""
;
39
}
40
return
hdr.
ArcType
();
41
}
42
43
std::string
LoadArcTypeFromFst
(
const
std::string &fst_source) {
44
FstHeader
hdr;
45
std::ifstream in(fst_source, std::ios_base::in | std::ios_base::binary);
46
if
(!hdr.
Read
(in, fst_source)) {
47
LOG
(ERROR) <<
"Error reading FST: "
<< fst_source;
48
return
""
;
49
}
50
return
hdr.
ArcType
();
51
}
52
53
}
// namespace script
54
}
// namespace fst
fst::FstHeader::Read
bool Read(std::istream &strm, const std::string &source, bool rewind=false)
Definition:
fst.cc:56
fst
Definition:
compact16_acceptor-fst.cc:26
LOG
#define LOG(type)
Definition:
log.h:53
fst::script::LoadArcTypeFromFst
std::string LoadArcTypeFromFst(const std::string &fst_source)
Definition:
script-impl.cc:43
fst::FarHeader
Definition:
far.h:72
fst::FarHeader::Read
bool Read(const std::string &source)
Definition:
far.h:78
fst.h
fst::script::LoadArcTypeFromFar
std::string LoadArcTypeFromFar(const std::string &far_source)
Definition:
script-impl.cc:34
fst::FarHeader::ArcType
const std::string & ArcType() const
Definition:
far.h:74
fst::FstHeader
Definition:
fst.h:126
script-impl.h
log.h
fst::FstHeader::ArcType
const std::string & ArcType() const
Definition:
fst.h:138
far.h
Generated by
1.8.11