• Skip to content
  • Skip to link menu
KDE 4.4 API Reference
  • KDE API Reference
  • KDE Support
  • Sitemap
  • Contact Us
 

soprano

asyncmodel.h

Go to the documentation of this file.
00001 /* 
00002  * This file is part of Soprano Project.
00003  *
00004  * Copyright (C) 2008 Sebastian Trueg <trueg@kde.org>
00005  *
00006  * This library is free software; you can redistribute it and/or
00007  * modify it under the terms of the GNU Library General Public
00008  * License as published by the Free Software Foundation; either
00009  * version 2 of the License, or (at your option) any later version.
00010  *
00011  * This library is distributed in the hope that it will be useful,
00012  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00013  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00014  * Library General Public License for more details.
00015  *
00016  * You should have received a copy of the GNU Library General Public License
00017  * along with this library; see the file COPYING.LIB.  If not, write to
00018  * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
00019  * Boston, MA 02110-1301, USA.
00020  */
00021 
00022 #ifndef _SOPRANO_ASYNC_MODEL_H_
00023 #define _SOPRANO_ASYNC_MODEL_H_
00024 
00025 #include "filtermodel.h"
00026 #include "asyncresult.h" // backwards comp when AsyncResult was defined in this header
00027 
00028 #include "soprano_export.h"
00029 
00030 
00031 namespace Soprano {
00032 
00033     class Statement;
00034     class StatementIterator;
00035     class Node;
00036     class NodeIterator;
00037     class QueryResultIterator;
00038 
00039     namespace Util {
00040 
00041         class AsyncModelPrivate;
00042 
00067         class SOPRANO_EXPORT AsyncModel : public FilterModel
00068         {
00069             Q_OBJECT
00070 
00071         public:
00077             AsyncModel( Model* parent = 0 );
00078 
00082             ~AsyncModel();
00083 
00089             enum AsyncModelMode {
00095                 SingleThreaded,
00096 
00102                 MultiThreaded
00103             };
00104 
00113             void setMode( AsyncModelMode mode );
00114 
00122             AsyncModelMode mode() const;
00123             
00134             AsyncResult* addStatementAsync( const Statement& statement );
00135 
00141             AsyncResult* addStatementAsync( const Node& subject, const Node& predicate, const Node& object, const Node& context = Node() );
00142 
00148             AsyncResult* addStatementsAsync( const QList<Statement>& statements );
00149 
00162             AsyncResult* removeStatementAsync( const Statement& statement );
00163 
00169             AsyncResult* removeStatementAsync( const Node& subject, const Node& predicate, const Node& object, const Node& context = Node() );
00170 
00176             AsyncResult* removeStatementsAsync( const QList<Statement>& statements );
00177 
00190             AsyncResult* removeAllStatementsAsync( const Statement& statement );
00191 
00197             AsyncResult* removeAllStatementsAsync( const Node& subject, const Node& predicate, const Node& object, const Node& context = Node() );
00198 
00207             AsyncResult* isEmptyAsync() const;
00208 
00217             AsyncResult* statementCountAsync() const;
00218 
00230             AsyncResult* listStatementsAsync( const Statement& statement ) const;
00231 
00237             AsyncResult* listStatementsAsync( const Node& subject, const Node& predicate, const Node& object, const Node& context = Node() ) const;
00238 
00246             AsyncResult* listStatementsAsync() const;
00247 
00256             AsyncResult* listContextsAsync() const;
00257 
00276             AsyncResult* executeQueryAsync( const QString& query, 
00277                                             Query::QueryLanguage language, 
00278                                             const QString& userQueryLanguage = QString() ) const;
00279 
00292             AsyncResult* containsStatementAsync( const Statement& statement ) const;
00293 
00299             AsyncResult* containsStatementAsync( const Node& subject, const Node& predicate, const Node& object, const Node& context = Node() ) const;
00300 
00312             AsyncResult* containsAnyStatementAsync( const Statement& statement ) const;
00313 
00319             AsyncResult* containsAnyStatementAsync( const Node& subject, const Node& predicate, const Node& object, const Node& context = Node() ) const;
00320 
00329             AsyncResult* createBlankNodeAsync();
00330 
00331             using FilterModel::addStatement;
00332             using FilterModel::removeStatement;
00333             using FilterModel::removeAllStatements;
00334             using FilterModel::listStatements;
00335             using FilterModel::containsStatement;
00336             using FilterModel::containsAnyStatement;
00337 
00338         private:
00339             AsyncModelPrivate* const d;
00340 
00341             Q_PRIVATE_SLOT( d, void _s_executeNextCommand() )
00342         };
00343     }
00344 }
00345 
00346 #endif

soprano

Skip menu "soprano"
  • Main Page
  • Namespace List
  • Class Hierarchy
  • Alphabetical List
  • Class List
  • File List
  • Namespace Members
  • Class Members
  • Related Pages

KDE Support

Skip menu "KDE Support"
  • akonadi
  • Decibel
  • grantlee
  • kdewin
  • phonon
  •     Backend
  • polkit-qt
  • qca
  • qimageblitz
  • soprano
  • strigi
  •     searchclient
  •     streamanalyzer
  •     streams
Generated for KDE Support by doxygen 1.5.9-20090814
This website is maintained by Adriaan de Groot and Allen Winter.
KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal