//
//     Copyright 2008 Simon Edwards <simon@simonzone.com>

//                 Generated by twine

// This file is part of PyKDE4.

// PyKDE4 is free software; you can redistribute it and/or modify
// it under the terms of the GNU Lesser General Public License as
// published by the Free Software Foundation; either version 2.1 of
// the License, or (at your option) any later version.

// PyKDE4 is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU General Public License for more details.

// You should have received a copy of the GNU General Public License
// along with this program.  If not, see <http://www.gnu.org/licenses/>.

namespace Nepomuk
{
namespace Types
{

class Entity
{
%TypeHeaderCode
#include <nepomuk/entity.h>
%End

public:
                            Entity (const Nepomuk::Types::Entity&);
    QString                 name () const;
    QUrl                    uri () const;
    QIcon                   icon ();
    bool                    isValid () const;
    bool                    isAvailable ();
//ig    QIcon                   icon () const;
//ig    bool                    isAvailable () const;
    void                    reset (bool recursive = 0);
    bool                    operator == (const Nepomuk::Types::Entity& other) const;
    bool                    operator != (const Nepomuk::Types::Entity& other) const;

protected:
                            Entity ();
public:
    virtual ~Entity ();
//ig    QUrl                    operator QUrl () const;
%ConvertToSubClassCode
    // CTSCC for subclasses of 'Entity'
    sipType = NULL;

    if (dynamic_cast<Nepomuk::Types::Class*>(sipCpp))
        sipType = sipType_Nepomuk_Types_Class;
    else if (dynamic_cast<Nepomuk::Types::Ontology*>(sipCpp))
        sipType = sipType_Nepomuk_Types_Ontology;
    else if (dynamic_cast<Nepomuk::Types::Property*>(sipCpp))
        sipType = sipType_Nepomuk_Types_Property;
%End
//ig    QString                 label (const QString& language = 0);
//ig    QString                 label (const QString& language = 0) const;
//ig    QString                 comment (const QString& language = 0);
//ig    QString                 comment (const QString& language = 0) const;
//force
    QString                 label (const QString& language);
    QString                 comment (const QString& language);
//end
    bool                    operator == (const QUrl& other) const;
    bool                    operator != (const QUrl& other) const;
    bool                    userVisible () const;
};
// Entity

uint                    qHash (const Nepomuk::Types::Entity& c);
};
// Types

//ig class Entity;
};

%ModuleHeaderCode
//ctscc
#include <nepomuk/class.h>
#include <nepomuk/entity.h>
#include <nepomuk/ontology.h>
#include <nepomuk/property.h>
%End
