コード例 #1
0
void NotifyingXMLParser::parse_files(const std::vector<std::pair<std::string, std::string> > &files) {
	int progress = 0;
	for(size_t i = 0; i < files.size(); ++i) {
		int tags;
		scoped_ptr<mrt::BaseFile> f(Finder->get_file(files[i].second, "rt"));
		get_file_stats(tags, *f);
		progress += tags;
	}
	
	reset_progress.emit(progress);

	for(size_t i = 0; i < files.size(); ++i) {
		scoped_ptr<mrt::BaseFile> f(Finder->get_file(files[i].second, "rt"));
		onFile(files[i].first, files[i].second);
		mrt::XMLParser::parse_file(*f);
	}
}
コード例 #2
0
ファイル: archiver.cpp プロジェクト: shpp-krusso/cs-b
/* Return data from encoded file*/
string Archiver :: getData(Node* root, ifstream &inFile, string& pathOfUncompressedFile)
{
    ofstream onFile(pathOfUncompressedFile.c_str());
    int sizeOfData;
    inFile >> sizeOfData;
    string encodedData = "";
    int k = sizeOfData--;
    while(k)
    {
        char c;
        inFile.get(c);
        for (int i = 0; i < 8; i++)
        {
            encodedData += c & (1 << (7 - i)) ? '1' : '0';
            k--;
            if(!k)
            {
                break;
            }
        }
    }
    Node* tempPtr = root;
    string data = "";
    for (int i = 0; i < sizeOfData; i++)
    {
        if (encodedData[i] - '0')
        {
            tempPtr = tempPtr->right;
        }
        else
        {
            tempPtr = tempPtr->left;
        }
        if (!tempPtr->left && !tempPtr->right)
        {
            data += tempPtr->value;
            onFile.put(tempPtr->value);
            tempPtr = root;
        }
    }
    return data;
}
コード例 #3
0
ファイル: seafilemodel.cpp プロジェクト: unsanded/cargodock
void SeafileModel::init()
{
    QVariant token   ( configValue("token:blowfish") );
    QVariant baseUrl ( configValue("address")        );

    if(!baseUrl.type() != QVariant::String){
        qWarning() << "INVALID URL" << baseUrl;
        emit error(QString("Seafile: invalid address of type ") + token.typeName());
    }
    if(!token.type() != QVariant::String){
        qWarning() << "INVALID TOKEN" << token;
        emit error(QString("Seafile: invalid token of type ") + token.typeName());
    }
    this->m_server = new SeafileServer(baseUrl.toByteArray(), token.toByteArray());
    this->m_server->ping(true);

    connect(this->m_server, SIGNAL(loadingDone()),
            this          , SLOT(onLoadFinished())
            );
    connect(
            this->m_server, SIGNAL(file(QSharedPointer<SeafileFile>)),
            this          , SLOT  (onFile(QSharedPointer<SeafileFile>))
                );
}