X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=include%2Fcull_list.h;h=d29b7b267c21a9fcc5629bbb58222e0f214f8480;hb=635cb9d65f6d7f6758ae8ed874da00c8d94b6e39;hp=ac64dced284341805081c6e78c0b33927a1af9d3;hpb=0b63ccd0b5cb26883d6becb196fb98e4f95d0397;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/include/cull_list.h b/include/cull_list.h index ac64dced2..d29b7b267 100644 --- a/include/cull_list.h +++ b/include/cull_list.h @@ -1,10 +1,12 @@ /* * InspIRCd -- Internet Relay Chat Daemon * + * Copyright (C) 2013, 2017 Sadie Powell + * Copyright (C) 2012 Robby + * Copyright (C) 2011 jackmcbarn * Copyright (C) 2009 Daniel De Graaf - * Copyright (C) 2008 Robin Burchell * Copyright (C) 2007 Dennis Friis - * Copyright (C) 2005, 2007 Craig Edwards + * Copyright (C) 2005, 2010 Craig Edwards * * This file is part of InspIRCd. InspIRCd is free software: you can * redistribute it and/or modify it under the terms of the GNU General Public @@ -43,14 +45,22 @@ class CoreExport CullList void Apply(); }; +/** Represents an action which is executable by an action list */ +class CoreExport ActionBase : public classbase +{ + public: + /** Executes this action. */ + virtual void Call() = 0; +}; + class CoreExport ActionList { - std::vector*> list; + std::vector list; public: /** Adds an item to the list */ - void AddAction(HandlerBase0* item) { list.push_back(item); } + void AddAction(ActionBase* item) { list.push_back(item); } /** Runs the items */