Esempio n. 1
0
void polarList::stats(void)
{
    qWarning() << "Nb polar: " << polars.count();
    QListIterator<Polar*> i (polars);
    int k=0;
    while(i.hasNext())
    {
        Polar * item = i.next();
        qWarning() << k << ": " << item->getName() << "(nb used=" << item->nbUsed << ")";
        k++;
    }
}
Esempio n. 2
0
void polarList::releasePolar(QString fname)
{
    QListIterator<Polar*> i (polars);
    while(i.hasNext())
    {
        Polar * item = i.next();
        if(item->getName()==fname)
        {
            item->nbUsed--;
            if(item->nbUsed==0)
            {
                polars.removeAll(item);
                delete item;
            }
            break;
        }
    }
}
Esempio n. 3
0
void polarList::loadPolars(void)
{
    isLoading=true;
    while(loadList.count()!=0)
    {
        QString fname=loadList.takeFirst();
        //qWarning() << "loop on " << fname;
        Polar * res=NULL;
        QListIterator<Polar*> i (polars);

        while(i.hasNext())
        {
            Polar * item = i.next();
            if(item->getName()==fname)
            {
                //qWarning() << "polar already loaded";
                res=item;
                item->nbUsed++;
                break;
            }
        }
        if(!res)
        {
            //qWarning() << "loading polar from disk";
            res = new Polar(fname,mainWindow);
            if(res && res->isLoaded())
            {
                res->nbUsed++;
                polars.append(res);
            }
            else
                res=NULL;
        }

        if(res==NULL)
            qWarning() << "Polar not found: " << fname;
        //qWarning() << "Sending polar " << fname;
        emit polarLoaded(fname,res);
    }
    isLoading=false;
}