// File autogenerated

#if !defined(PROPERTIESINTERFACE_H_INCLUDED)
#define PROPERTIESINTERFACE_H_INCLUDED

// TQt D-Bus includes
#include <tqdbuserror.h>
#include <tqdbusobject.h>

// forward declarations
class TQDomElement;
class TQString;
class TQStringList;
class TQT_DBusError;
class TQT_DBusVariant;
template <typename K, typename V> class TQMap;

namespace org
{
namespace freedesktop
{
namespace DBus
{

class PropertiesInterface : public TQT_DBusObjectBase
{
public:
    virtual ~PropertiesInterface() {}

    static void buildIntrospectionData(TQDomElement& interfaceElement);

    static const TQCString interface() { return TQCString("org.freedesktop.DBus.Properties"); }

protected: // implement sending signals
    virtual bool handleSignalSend(const TQT_DBusMessage& reply) = 0;
    virtual TQString objectPath() const = 0;

protected: // for sending D-Bus signals
    virtual bool emitPropertiesChanged(const TQString& interface, const TQMap< TQString, TQT_DBusVariant >& changed_properties, const TQStringList& invalidated_properties);


protected:
    virtual bool Get(const TQString& interface, const TQString& name, TQT_DBusVariant& value, TQT_DBusError& error) = 0;

    virtual bool Set(const TQString& interface, const TQString& name, const TQT_DBusVariant& value, TQT_DBusError& error) = 0;

    virtual bool GetAll(const TQString& interface, TQMap< TQString, TQT_DBusVariant >& properties, TQT_DBusError& error) = 0;

protected: // implement sending replies
    virtual void handleMethodReply(const TQT_DBusMessage& reply) = 0;

protected: // usually no need to reimplement
    virtual bool handleMethodCall(const TQT_DBusMessage& message);

    TQT_DBusMessage callGet(const TQT_DBusMessage& message);

    TQT_DBusMessage callSet(const TQT_DBusMessage& message);

    TQT_DBusMessage callGetAll(const TQT_DBusMessage& message);

}; // class PropertiesInterface

}; // namespace DBus

}; // namespace freedesktop

}; // namespace org

#endif //PROPERTIESINTERFACE_H_INCLUDED

// End of File

