Anope IRC Services  Version 2.0
os_ignore.h
Go to the documentation of this file.
1 /* OperServ ignore interface
2  *
3  * (C) 2003-2014 Anope Team
4  * Contact us at team@anope.org
5  *
6  * Please read COPYING and README for further details.
7  *
8  * Based on the original code of Epona by Lara.
9  * Based on the original code of Services by Andy Church.
10  */
11 
12 
13 struct IgnoreData
14 {
18  time_t time; /* When do we stop ignoring them? */
19 
20  virtual ~IgnoreData() { }
21  protected:
22  IgnoreData() : time(0) { }
23 };
24 
25 class IgnoreService : public Service
26 {
27  protected:
28  IgnoreService(Module *c) : Service(c, "IgnoreService", "ignore") { }
29 
30  public:
31  virtual void AddIgnore(IgnoreData *) = 0;
32 
33  virtual void DelIgnore(IgnoreData *) = 0;
34 
35  virtual void ClearIgnores() = 0;
36 
37  virtual IgnoreData *Create() = 0;
38 
39  virtual IgnoreData *Find(const Anope::string &mask) = 0;
40 
41  virtual std::vector<IgnoreData *> &GetIgnores() = 0;
42 };
43 
44 static ServiceReference<IgnoreService> ignore_service("IgnoreService", "ignore");
45 
Anope::string mask
Definition: os_ignore.h:15
virtual IgnoreData * Create()=0
virtual void AddIgnore(IgnoreData *)=0
virtual ~IgnoreData()
Definition: os_ignore.h:20
virtual IgnoreData * Find(const Anope::string &mask)=0
Anope::string reason
Definition: os_ignore.h:17
IgnoreData()
Definition: os_ignore.h:22
virtual void DelIgnore(IgnoreData *)=0
Anope::string creator
Definition: os_ignore.h:16
time_t time
Definition: os_ignore.h:18
virtual void ClearIgnores()=0
IgnoreService(Module *c)
Definition: os_ignore.h:28
virtual std::vector< IgnoreData * > & GetIgnores()=0
static ServiceReference< IgnoreService > ignore_service("IgnoreService","ignore")