Skip to content
Snippets Groups Projects

Param ann

Merged Grzegorz Kostkowski requested to merge param_ann into develop
Compare and
2 files
+ 24
4
Compare changes
  • Side-by-side
  • Inline
Files
2
@@ -37,6 +37,7 @@ bool MWEReader::registered = TokenReader::register_path_reader<MWEReader>(
: TokenReader(tagset), inner_filename_(filename)
{
mwes_counter=0;
chan_ann_name = "mwe";
}
MWEReader::MWEReader(const Tagset &tagset, const std::string &filename,
@@ -45,6 +46,7 @@ bool MWEReader::registered = TokenReader::register_path_reader<MWEReader>(
{
mwes_counter=0;
inner_reader_ = reader;
chan_ann_name = "mwe";
}
void MWEReader::setFile(const std::string &filename)
@@ -58,6 +60,16 @@ bool MWEReader::registered = TokenReader::register_path_reader<MWEReader>(
// TODO implementataion
}
void MWEReader::set_annotation_channel(const std::string & chan_name)
{
chan_ann_name = chan_name;
}
std::string MWEReader::get_annotation_channel_base_name()
{
return chan_ann_name + "_base";
}
Token* MWEReader::get_next_token()
{
if(currentSentence->empty())
@@ -104,11 +116,11 @@ bool MWEReader::registered = TokenReader::register_path_reader<MWEReader>(
// create 'mwe' channel if not exists
ChanMapT chan_map = ann_sentence->all_channels();
if (chan_map.find("mwe") == chan_map.end()) {
ann_sentence->create_channel("mwe");
if (chan_map.find(chan_ann_name) == chan_map.end()) {
ann_sentence->create_channel(chan_ann_name);
}
AnnotationChannel& channel = ann_sentence->get_channel("mwe");
AnnotationChannel& channel = ann_sentence->get_channel(chan_ann_name);
// if channel exists, we leave annotation numbers
int head_ann_num = channel.get_segment_at(head);
@@ -123,7 +135,7 @@ bool MWEReader::registered = TokenReader::register_path_reader<MWEReader>(
tokens[head]->create_metadata();
}
TokenMetaDataPtr md = tokens[head]->get_metadata();
md->set_attribute("mwe_base", new_base);
md->set_attribute(get_annotation_channel_base_name(), new_base);
// annotate mwe elements with annotation_number of head
std::set<int>::iterator pos_it;