Esempio n. 1
0
void TrayControlWindow::refresh_environments() {
  if (CHubController::Instance().refresh_environments())
    return;

  m_hub_menu->clear();
  for (auto i = m_lst_hub_menu_items.begin(); i != m_lst_hub_menu_items.end(); ++i) {
    delete *i;
  }
  m_lst_hub_menu_items.clear();

  for (auto env = CHubController::Instance().lst_environments().cbegin();
       env != CHubController::Instance().lst_environments().cend(); ++env) {

    QString env_name = env->name();
    env_name.replace("_", "__"); //megahack :) Don't know how to handle underscores.
    QMenu* env_menu = m_hub_menu->addMenu(env_name);
    for (auto cont = env->containers().cbegin(); cont != env->containers().cend(); ++cont) {
      QAction* act = new QAction(cont->name(), this);
      CHubEnvironmentMenuItem* item = new CHubEnvironmentMenuItem(&(*env), &(*cont), m_sys_tray_icon);
      connect(act, SIGNAL(triggered()), item, SLOT(internal_action_triggered()));
      connect(item, SIGNAL(action_triggered(const CSSEnvironment*, const CHubContainer*, void*)),
              this, SLOT(hub_container_mi_triggered(const CSSEnvironment*, const CHubContainer*, void*)));
      env_menu->addAction(act);
      m_lst_hub_menu_items.push_back(item);
    }
  }
}
MojErr ContainerManager::InfoToJson(MojObject& rep) const
{
	MojObject containers(MojObject::TypeArray);

	std::for_each(m_containers.begin(), m_containers.end(),
		boost::bind(&ResourceContainer::PushJson,
			boost::bind(&ContainerMap::value_type::second, _1),
			boost::ref(containers)));

	MojErr err = rep.put(_T("containers"), containers);
	MojErrCheck(err);

	MojObject entityMap(MojObject::TypeArray);
	for (EntityContainerMap::const_iterator iter = m_entityContainers.begin();
		iter != m_entityContainers.end(); ++iter) {
		MojObject mapping(MojObject::TypeObject);

		MojString containerName;
		err = containerName.assign(iter->second->GetName().c_str());
		MojErrCheck(err);

		err = mapping.put(iter->first->GetName().c_str(), containerName);
		MojErrCheck(err);

		err = entityMap.push(mapping);
		MojErrCheck(err);
	}

	err = rep.put(_T("entityMap"), entityMap);
	MojErrCheck(err);

	return MojErrNone;
}
void blob_service_test_base_with_objects_to_delete::check_container_list(const std::vector<azure::storage::cloud_blob_container>& list, const utility::string_t& prefix, bool check_found)
{
    auto container_list_sorted = std::is_sorted(list.cbegin(), list.cend(), [](const azure::storage::cloud_blob_container& a, const azure::storage::cloud_blob_container& b)
    {
        return a.name() < b.name();
    });
    CHECK(container_list_sorted);

    std::vector<azure::storage::cloud_blob_container> containers(m_containers_to_delete);

    for (auto list_iter = list.begin(); list_iter != list.end(); ++list_iter)
    {
        bool found = false;
        for (auto iter = containers.begin(); iter != containers.end(); ++iter)
        {
            if (iter->name() == list_iter->name())
            {
                auto index_str = list_iter->metadata().find(U("index"));
                CHECK(index_str != list_iter->metadata().end());
                CHECK_UTF8_EQUAL(iter->name(), prefix + index_str->second);
                containers.erase(iter);
                found = true;
                break;
            }
        }
        if (check_found)
        {
            CHECK(found);
        }
    }
    CHECK(containers.empty());
}
Esempio n. 4
0
Atmosphere::Atmosphere()
{
	Containers containers(std::make_pair(Containers::CONSTBUFFER, MODIFY));

	constantbuffers = containers.get<ConstantBufferContainer>(Containers::CONSTBUFFER);
	atmospheres = containers.get<AtmosphereContainer>(Containers::ATMOSPHERE_SIM);
}
Esempio n. 5
0
 /** Split the component into several containers no more components than componentsPerContainer
     but there may be less components in each container. There can never be more components in
     a container than there are IDs, hence the type of parameter is ID **/
 std::vector<Components<T, Container>> split(ID componentsPerContainer) const {
     const int numContainers = (size() / componentsPerContainer) + ((size() % componentsPerContainer) > 0 ? 1 : 0);
     std::vector<Components<T>> containers(numContainers, Components<T, Container>());
     auto it(begin());
     for(auto& smallerContainer : containers) {
         for(int i = 0; i < componentsPerContainer && it != end(); i++) {
             smallerContainer.insert(*it++);
         }
     }
     return containers;
 }