Example #1
0
void Statistics::DumpAllConfigs() const {
  int cnt = 0;
  for (CCIter it = Configs().begin(); it != Configs().end(); ++it, ++cnt) {
	ofstream out(string("test/cmp" + IntToStr(cnt+1) + ".cmp").c_str());
    out << (*it).second->Config()->ToString();
    out.close();
  }
}
Example #2
0
void Statistics::DumpConfigs() const {
  if (system("mkdir -p test")) {
    cout << "-E- Could not create directory ./test - no configs will be dumped." << endl;
  }

  int cnt = 0;
  for (CCIter it = Configs().begin(); it != Configs().end(); ++it, ++cnt) {
    ofstream out(string("test/cmp" + IntToStr(cnt+1) + ".cmp").c_str());
    out << it->second->Config()->ToString();
    out.close();
  }
}
Example #3
0
void Statistics::ReportWorstRoutability(UInt cnt) const {
  cout << "************* Stats: ReportWorstRoutability *************" << endl;
  typedef multimap<double, StatConfig*, less<double> > RoutMap;
  RoutMap routMap;
  for (CCIter it = Configs().begin(); it != Configs().end(); ++it)
    routMap.insert(make_pair(it->second->GetMetrics(0)->Routability(),it->second));

  for (RoutMap::const_iterator it = routMap.begin();
       it != routMap.end(); ++it, --cnt) {
    ReportConfig(it->second);
    if (cnt <= 1)
      break;
  }
}
Example #4
0
status_t ArpConfigureFile::ApplySettings(const BMessage* from)
{
    if( from == 0 ) return B_BAD_VALUE;

    const ArpVectorI<ArpConfigurableI*>& configs = Configs();
    const ArpVectorI<BString>& names = Names();

    status_t err = B_OK;

    for( size_t i=0; err == B_OK && i<configs.size(); i++ ) {
        if( configs[i] ) {
            if( i < names.size() && names[i] != "" ) {
                BMessage msg;
                err = from->FindMessage(names[i].String(), &msg);
                if( err == B_OK ) {
                    err = configs[i]->PutConfiguration(&msg);
                }
            } else {
                err = configs[i]->PutConfiguration(from);
            }
        }
    }

    return err;
}
Example #5
0
status_t ArpConfigureFile::MakeSettings(BMessage* in) const
{
    if( in == 0 ) return B_BAD_VALUE;

    const ArpVectorI<ArpConfigurableI*>& configs = Configs();
    const ArpVectorI<BString>& names = Names();

    status_t err = B_OK;

    for( size_t i=0; err == B_OK && i<configs.size(); i++ ) {
        if( configs[i] ) {
            if( i < names.size() && names[i] != "" ) {
                BMessage msg;
                err = configs[i]->GetConfiguration(&msg);
                if( err == B_OK ) {
                    err = in->AddMessage(names[i].String(), &msg);
                }
            } else {
                err = configs[i]->GetConfiguration(in);
            }
        }
    }

    return err;
}
Example #6
0
void Statistics::ReportAllConfigs() const {
  cout << "*************** Stats: ReportAllConfigs ***************" << endl;
  for (CCIter it = Configs().begin(); it != Configs().end(); ++it)
    ReportConfig((*it).second);
}
Example #7
0
Statistics::~Statistics() {
  for (CCIter it = Configs().begin(); it != Configs().end(); ++it)
    delete it->second;
}