summaryrefslogtreecommitdiff
path: root/src/chat/perm.h
blob: fca019f7a3673824363866c5d504dc0740b76efd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
#include "../incl.h"
#include "../maps/shashmap.h"

#ifndef PERM_H
#define PERM_H

using namespace std;

template<class type_>
struct valwrap
{
  type_ val;
  valwrap(type_ i)
  {
    val = i;
  }

  type_ get_val()
  {
    return val;
  }
};

class perm
{
private:
  shashmap< valwrap<int>* >* p_command_status;
  shashmap< valwrap<bool>* >* p_command_disabled;

  void set_standard_command_permissions();

public:
  perm( );
  ~perm( );

  virtual int  get_command_status( string s_command );
  virtual bool get_command_disabled( string s_command );
  virtual void set_command_status( string s_command, int i_int );
  virtual void set_command_disabled( string s_command, bool b_bool );
};

#endif