LeechCraft 0.6.70-16373-g319c272718
Modular cross-platform feature rich live environment.
Loading...
Searching...
No Matches
ientityhandler.h
Go to the documentation of this file.
1/**********************************************************************
2 * LeechCraft - modular cross-platform feature rich internet client.
3 * Copyright (C) 2006-2014 Georg Rudoy
4 *
5 * Distributed under the Boost Software License, Version 1.0.
6 * (See accompanying file LICENSE or copy at https://www.boost.org/LICENSE_1_0.txt)
7 **********************************************************************/
8
9#ifndef INTERFACES_IENTITYHANDLER_H
10#define INTERFACES_IENTITYHANDLER_H
11#include <QByteArray>
12#include <QtPlugin>
13#include "structures.h"
14
16
26class Q_DECL_EXPORT IEntityHandler
27{
28public:
45 virtual EntityTestHandleResult CouldHandle (const LC::Entity& entity) const = 0;
46
58 virtual void Handle (LC::Entity entity) = 0;
59
60 virtual ~IEntityHandler () {}
61};
62
63Q_DECLARE_INTERFACE (IEntityHandler, "org.Deviant.LeechCraft.IEntityHandler/1.0")
64
65#endif
66
Interface for plugins able to handle entities.
virtual void Handle(LC::Entity entity)=0
Notifies the plugin that it should handle the given entity.
virtual EntityTestHandleResult CouldHandle(const LC::Entity &entity) const =0
Returns whether plugin can handle given entity.
virtual ~IEntityHandler()
The result of testing whether an entity could be handled by a plugin.
A message used for inter-plugin communication.
Definition structures.h:96