コード例 #1
0
ファイル: table_test.cpp プロジェクト: CheezBoiger/CatDBMS
void test_table(void) {
  catdb::DBase::Database database("Billy_database");
  catdb::DBase::Database database1("Johnny_database");
  catdb::Column* temp = database.find_column("Cool");

  std::cout << temp->display_list() << std::endl;
  delete temp;
  temp = NULL;
  catdb::Container* container(new catdb::Container("Alex"));
  catdb::Container container1("Billy");
  catdb::Container container2("Fred");
  catdb::Container container3("Zen");

  container->insert_new_element("12.2", "Cool");
  container1.insert_new_element("14.3", "Cool");
  container2.insert_new_element("99.9", "Cool");
  container3.insert_new_element("80.2", "Cool");
  std::cout << container->obtain_element("12.2")->get_attribute() << std::endl;
  // not implemented yet!!
  database.add_container(container);
  database.add_container(&container1);
  database.add_container(&container2);
  database.add_container(&container3);

  std::cout << database.get_container("Alex")->get_container_name() << std::endl;
  std::cout << "Here is a list of stuff in this column" << std::endl;
  catdb::Column* column = database.find_column("Cool");
  catdb::Element* element = column->inspect_element("12.2", "Cool");
  column->sort_column(tools::sorting::quick_sort, tools::sorting::SORT_LITTLE_ENDIAN);
  std::cout << column->display_list() << std::endl;
  database.remove_container("Alex");
  database.remove_container("Billy");
  database.remove_container("Fred");
  database.remove_container("Zen");
  delete column;
  column = NULL;

  database1 = database;
  catdb::GreaterComparator<catdb::Element> _g;
  catdb::Comparator<catdb::Element>& _comp = catdb::LesserComparator<catdb::Element>();
  catdb::Element el1("Cooler", "Bool", "Mang");
  catdb::Element el2("Alex", "Benson", "Kol");
  std::cout << _comp(el1, el2) << std::endl;
  tools::data_structures::hash_map<int, int> mapping;


  //	if (database.get_container("Alex") == NULL)
  //	   std::cout << "Alex is deleted!" << std::endl;

  //	database.folder_create();
  //	catdb::DBase::display_db_error_msg();
}
コード例 #2
0
void test1()
{
  for (int x : container1()); // { dg-error "member but not" }
  for (int x : container2()); // { dg-error "member but not" }
  for (int x : container3()); // { dg-error "within this context" }
  for (int x : container4()); // { dg-error "cannot be used as a function" }
  for (int x : container5()); // { dg-error "invalid use of" }
  for (int x : container6());
  for (int x : container7());
  for (int x : container8());
  for (int x : container9()); // { dg-error "within this context" }
  for (int x : container10());
}
コード例 #3
0
void TestShapeContainer::testSetParent()
{
    MockContainerModel *model1 = new MockContainerModel();
    MockContainer container1(model1);
    MockContainerModel *model2 = new MockContainerModel();
    MockContainer container2(model2);
    MockShape shape;
    // init test
    QCOMPARE(model1->shapes().count(), 0);
    QCOMPARE(model2->shapes().count(), 0);

    shape.setParent(&container1);
    QCOMPARE(model1->shapes().count(), 1);
    QCOMPARE(model2->shapes().count(), 0);
    QCOMPARE(shape.parent(), &container1);

    shape.setParent(&container2);
    QCOMPARE(model1->shapes().count(), 0);
    QCOMPARE(container1.shapes().count(), 0);
    QCOMPARE(model2->shapes().count(), 1);
    QCOMPARE(container2.shapes().count(), 1);
    QCOMPARE(shape.parent(), &container2);
}
コード例 #4
0
void
PeriodicPredictor::calculate_autocorrelation(std::vector<double> *container) {
  std::vector<double> samples_copy;
  std::deque<double>::iterator it;

  for (it = this->samples.begin(); it != this->samples.end(); it++) {
    samples_copy.push_back(*it);
  }

  for (int32_t offset = 0; offset <= this->sample_size/2; offset++) {
    std::vector<double> container1(samples_copy.begin(),
                                   samples_copy.end() - offset);
    std::vector<double> container2(samples_copy.begin() + offset,
                                   samples_copy.end());

    double variance1 = calculate_variance(container1);
    double variance2 = calculate_variance(container2);
    double covariance = calculate_covariance(container1, container2);
    double correlation = (variance1 == 0 || variance2 == 0) ?
                         1.0 : covariance/(variance1*variance2);
    container->push_back(correlation);
  }
}