Пример #1
0
void
Group::GenerateCode(CodeTextCtrl *codectrl, Report *reportctrl) const
{
#if 0
	codectrl->Append(wxT("/*\n===========================================\nMembers:\n"));
	for (List<Member *>::Iterator i = MemberIterator(); !i; i++)
	{
		codectrl->Append(wxT("\t")).Append((*i)->GetName()).Append(wxT("\t")).Append((*i)->ToString()).Append(wxT("\n"));
	}
	codectrl->Append(wxT("Properties:\n"));
	for (List<Property *>::Iterator i = PropertyIterator(); !i; i++)
	{
		codectrl->Append(wxT("\t")).Append((*i)->GetName()).Append(wxT("\t")).Append((*i)->ToString()).Append(wxT("\n"));
	}
	codectrl->Append(wxT("Inputs:\n"));
	for (List<InputPort *>::Iterator i = InputIterator(); !i; i++)
	{
		codectrl->Append(wxT("\t")).Append((*i)->GetMember(wxT("Name"))->GetString()).Append(wxT("\n"));
	}
	codectrl->Append(wxT("Outputs:\n"));
	for (List<OutputPort *>::Iterator i = OutputIterator(); !i; i++)
	{
		codectrl->Append(wxT("\t")).Append((*i)->GetMember(wxT("Name"))->GetString()).Append(wxT("\n"));
	}
	codectrl->Append(wxT("===========================================\n*/\n"));
#endif
}
Пример #2
0
OutputIterator Connection::GetOutputs()
{
	prechecksNoCommandsList();
	mpd_send_outputs(m_connection.get());
	checkErrors();
	return OutputIterator(m_connection.get(), defaultFetcher<Output>(mpd_recv_output));
}
Пример #3
0
int main(int argc, char ** argv)
{
  utils::mpi_world mpi_world(argc, argv);
  
  const int mpi_rank = MPI::COMM_WORLD.Get_rank();
  const int mpi_size = MPI::COMM_WORLD.Get_size();
  
  try {
    options(argc, argv);

    cicada::optimize::LineSearch::value_min = value_lower;
    cicada::optimize::LineSearch::value_max = value_upper;
    
    if (scorer_list) {
      std::cout << cicada::eval::Scorer::lists();
      return 0;
    }
    
    if (int(yield_sentence) + yield_alignment + yield_span > 1)
      throw std::runtime_error("specify either sentence|alignment|span yield");
    if (int(yield_sentence) + yield_alignment + yield_span == 0)
      yield_sentence = true;

    if (weights_file.empty() || ! boost::filesystem::exists(weights_file))
      throw std::runtime_error("no weight file? " + weights_file.string());
    if (direction_name.empty())
      throw std::runtime_error("no direction?");
    
    // read reference set
    scorer_document_type scorers(scorer_name);
    
    read_refset(refset_files, scorers);
    
    if (mpi_rank == 0 && debug)
      std::cerr << "# of references: " << scorers.size() << std::endl;

    // read test set
    
    if (mpi_rank == 0 && debug)
      std::cerr << "reading hypergraphs" << std::endl;

    hypergraph_set_type graphs(scorers.size());
    
    read_tstset(tstset_files, graphs);
    
    weight_set_type weights;
    {
      utils::compress_istream is(weights_file, 1024 * 1024);
      is >> weights;
    }
    
    weight_set_type direction;
    direction[direction_name] = 1.0;
    
    segment_document_type segments(graphs.size());
    
    compute_envelope(scorers, graphs, weights, direction, segments);

    if (mpi_rank == 0) {
      line_search_type line_search(debug);
      
      utils::compress_ostream os(output_file, 1024 * 1024);
      
      line_search(segments, value_lower, value_upper, OutputIterator(os, weights[direction_name]));
    }
  }
  catch (const std::exception& err) {
    std::cerr << "error: " << err.what() << std::endl;
    return 1;
  }
  return 0;
}