Exemplo n.º 1
0
void CameraWorker::setup(QThread *cThread, QMutex *mutex, QMutex *_lutMutex, LUT3D *_lut)
{
    myThread = cThread;
    myMutex = mutex;
    lutMutex = _lutMutex;
    lut = _lut;
    connect(cThread, SIGNAL(started()), this, SLOT(onEntry()));
}
Exemplo n.º 2
0
void FatWalk::walk(int cluster)
{
    FatEntry root;

    if (cluster == system.rootDirectory) {
        root = system.rootEntry();
    } else {
        root.cluster = cluster;
        root.attributes = FAT_ATTRIBUTES_DIR;
        root.longName = "/";
    }
    set<int> visited;
    onEntry(root, root, "/");
    doWalk(visited, root, "/");
}
Exemplo n.º 3
0
void EventDispatcherBase<TDerived>::enterStatesInEnterSet(event_type event)
{
    for (auto iter = derived().begin(); iter != derived().end(); ++iter)
    {
        if ((iter->m_flags & state_type::InEnterSet)
            && !(iter->m_flags & state_type::Active))
        {
            derived().invokeStateEntryCallback(&*iter);
            try
            {
                iter->onEntry(event);
            }
            catch (...)
            {
                derived().invokeStateExceptionCallbackOrThrow();
            }
            iter->m_flags |= (state_type::Active | state_type::StartInvoke);
        }
    }
}
Exemplo n.º 4
0
void FatWalk::doWalk(set<int> &visited, FatEntry &currentEntry, string name)
{
    int cluster = currentEntry.cluster;

    if (visited.find(cluster) != visited.end()) {
        return;
    }

    visited.insert(cluster);

    vector<FatEntry> entries = system.getEntries(cluster);
    vector<FatEntry>::iterator it;

    for (it=entries.begin(); it!=entries.end(); it++) {
        FatEntry &entry = *it;

        if ((!walkErased) && entry.isErased()) {
            continue;
        }

        if (entry.getFilename() != "." && entry.getFilename() != "..") {
            string subname = name;

            if (subname != "" && subname != "/") {
                subname += "/";
            }

            subname += entry.getFilename();

            if (entry.isDirectory()) {
                onDirectory(currentEntry, entry, subname);
                doWalk(visited, entry, subname);
            }

            onEntry(currentEntry, entry, subname);
        }
    }
}
Exemplo n.º 5
0
void CameraWorker::setup(QThread *cThread, QMutex *mutex)
{
    myThread = cThread;
    myMutex = mutex;
    connect(cThread, SIGNAL(started()), this, SLOT(onEntry()));
}
void sipQFinalState::sipProtectVirt_onEntry(bool sipSelfWasArg,QEvent *a0)
{
    (sipSelfWasArg ? QFinalState::onEntry(a0) : onEntry(a0));
}
void sipQAbstractState::sipProtect_onEntry(QEvent *a0)
{
    onEntry(a0);
}
Exemplo n.º 8
0
void MenuMaker::input(int key) {
	if (currentMenu->entries->size()==0 && ! (key == MENUMAKER_INPUT_LEFT || key == MENUMAKER_INPUT_BACK))
		return;
		
	switch(key) {
		case MENUMAKER_INPUT_UP:
				
			if (currentEntry <= 0)
				currentEntry = currentMenu->entries->size()-1;
			// TODO else if (rollover)
			else currentEntry--;
			break;

		case MENUMAKER_INPUT_DOWN:
			if (currentEntry >= currentMenu->entries->size()-1)
				currentEntry = 0;
			else currentEntry++;
			break;
			
		case MENUMAKER_INPUT_LEFT:
			// TODO
			// if in widget:
			// decrease()
			// else if in menu
			input(MENUMAKER_INPUT_BACK);
			return;
			
		case MENUMAKER_INPUT_RIGHT:
			// TODO
			// if in widget:
			// increase()
			// else if in menu
			input(MENUMAKER_INPUT_SELECT);
			return;
			
		case MENUMAKER_INPUT_BACK: {
				if (history->size() <= 0)
					return;
				
				MenuMakerMenu* b = history->pop();
				MenuMakerMenu* oldMenu = currentMenu;
				const int oid = currentMenu->id;
				int from = 0;
				const int n = b->entries->size();
				for (int i=0;i<n;i++) {
					if (b->entries->get(i)->id == oid) {
						from = i;
						break;
					}
				}
				
				onLeave(oldMenu);
				currentEntry = from;
				currentMenu = b;
				redraw();

				onExit(oldMenu);
				
				return; // return, no break. this is select/back not navigation within the current list;
			}
			
		case MENUMAKER_INPUT_SELECT: 
		{
			MenuMakerEntry* e = currentMenu->entries->get(currentEntry);
			MenuMakerMenu* m;
			switch(e->type) { // Jaguar
				case MENUMAKER_TYPE_SUBMENU:
					m = resolveMenu(e->id);
					onPrepare(m);
					select(m);
					break;
				case MENUMAKER_TYPE_SELECT_SINGLE: {
					int old = *((int*)currentMenu->choice);
					*((int*)currentMenu->choice) = e->id;
					onSelection(currentMenu, &old);
					break; }
				case MENUMAKER_TYPE_SELECT_MULTI: {
					bool old[currentMenu->entries->size()];
					memcpy(old, currentMenu->choice, sizeof(bool) * currentMenu->entries->size());
					((bool*)currentMenu->choice)[currentEntry] = !((bool*)currentMenu->choice)[currentEntry];
					onSelection(currentMenu, old);
					}
					break;
				default:
					onEntry(e->id);
					break;
			}
			return; // return, no break. this is select/back not navigation within the current list
		}
		
		default:
			return;
	}

	highlight(currentEntry);
}