1 /* +------------------------------------+
2 * | Inspire Internet Relay Chat Daemon |
3 * +------------------------------------+
5 * InspIRCd: (C) 2002-2010 InspIRCd Development Team
6 * See: http://wiki.inspircd.org/Credits
8 * This program is free but copyrighted software; see
9 * the file COPYING for details.
11 * ---------------------------------------------------
14 #ifndef __CULLLIST_H__
15 #define __CULLLIST_H__
18 * The CullList class is used to delete objects at the end of the main loop to
19 * avoid problems with references to deleted pointers if an object were deleted
22 class CoreExport CullList
24 std::vector<classbase*> list;
27 /** Adds an item to the cull list
29 void AddItem(classbase* item) { list.push_back(item); }
31 /** Applies the cull list (deletes the contents)
36 class CoreExport ActionList
38 std::vector<HandlerBase0<void>*> list;
41 /** Adds an item to the list
43 void AddAction(HandlerBase0<void>* item) { list.push_back(item); }