Skip to content
Snippets Groups Projects
Commit 6a12a604 authored by minda's avatar minda
Browse files

New possibility in mwe_reader - new constructor

parent 348e1e4f
No related merge requests found
...@@ -39,6 +39,11 @@ if(UNIX) ...@@ -39,6 +39,11 @@ if(UNIX)
install(TARGETS corpus2_mwereader LIBRARY DESTINATION lib) install(TARGETS corpus2_mwereader LIBRARY DESTINATION lib)
#install(TARGETS c2pqtest RUNTIME DESTINATION bin) #install(TARGETS c2pqtest RUNTIME DESTINATION bin)
install(
DIRECTORY ./
DESTINATION include/libmwereader
FILES_MATCHING PATTERN "*.h"
)
endif(UNIX) endif(UNIX)
add_subdirectory(tests) add_subdirectory(tests)
...@@ -32,6 +32,13 @@ bool MWEReader::registered = TokenReader::register_path_reader<MWEReader>( ...@@ -32,6 +32,13 @@ bool MWEReader::registered = TokenReader::register_path_reader<MWEReader>(
mwes_counter=0; mwes_counter=0;
} }
MWEReader::MWEReader(const Tagset &tagset, const std::string &filename, TokenReaderPtr reader)
: TokenReader(tagset), inner_filename_(filename)
{
mwes_counter=0;
inner_reader_ = reader;
}
MWEReader::~MWEReader() MWEReader::~MWEReader()
{ {
// TODO implementataion // TODO implementataion
...@@ -151,7 +158,6 @@ bool MWEReader::registered = TokenReader::register_path_reader<MWEReader>( ...@@ -151,7 +158,6 @@ bool MWEReader::registered = TokenReader::register_path_reader<MWEReader>(
void MWEReader::set_option(const std::string& option) void MWEReader::set_option(const std::string& option)
{ {
if(boost::algorithm::starts_with(option, "inner:")) { if(boost::algorithm::starts_with(option, "inner:")) {
std::string inner = option.substr(6); std::string inner = option.substr(6);
inner_reader_ = create_path_reader(inner, this->tagset(), inner_reader_ = create_path_reader(inner, this->tagset(),
...@@ -160,11 +166,11 @@ bool MWEReader::registered = TokenReader::register_path_reader<MWEReader>( ...@@ -160,11 +166,11 @@ bool MWEReader::registered = TokenReader::register_path_reader<MWEReader>(
currentSentence= boost::make_shared<Sentence>(); currentSentence= boost::make_shared<Sentence>();
} }
if(boost::algorithm::starts_with(option, "mwefile:")) { if(boost::algorithm::starts_with(option, "mwefile:")) {
std::string mwefile = option.substr(8); std::string mwefile = option.substr(8);
boost::algorithm::trim(mwefile); boost::algorithm::trim(mwefile);
if(boost::filesystem::exists(mwefile)) if(boost::filesystem::exists(mwefile)){
load_mwes(mwefile); load_mwes(mwefile);
}
else else
throw std::runtime_error("File "+ mwefile + " does not exists"); throw std::runtime_error("File "+ mwefile + " does not exists");
} }
...@@ -215,10 +221,8 @@ bool MWEReader::registered = TokenReader::register_path_reader<MWEReader>( ...@@ -215,10 +221,8 @@ bool MWEReader::registered = TokenReader::register_path_reader<MWEReader>(
MWEParser parser(mwe_index_); MWEParser parser(mwe_index_);
parser.parse_file(filename); parser.parse_file(filename);
mwes_counter++; mwes_counter++;
if(parser.get_tagset().name() != tagset().name()) if(parser.get_tagset().name() != tagset().name())
throw std::runtime_error( "Tagset in mwe file does not match reader tagset!" ); throw std::runtime_error( "Tagset in mwe file does not match reader tagset!" );
} }
......
...@@ -32,6 +32,7 @@ public: ...@@ -32,6 +32,7 @@ public:
* \param filename corpus filename (MWE file is given in options) * \param filename corpus filename (MWE file is given in options)
*/ */
MWEReader(const Tagset& tagset, const std::string& filename); MWEReader(const Tagset& tagset, const std::string& filename);
MWEReader(const Tagset &tagset, const std::string &filename, TokenReaderPtr reader);
~MWEReader(); ~MWEReader();
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment