ETISS 0.8.0
Extendable Translating Instruction Set Simulator (version 0.8.0)
InterruptEnable.h
Go to the documentation of this file.
1 #ifndef ETISS_INCLUDE_INTERRUPTENABLE_H_
2 #define ETISS_INCLUDE_INTERRUPTENABLE_H_
3 
4 namespace etiss {
5 
7 {
8  public:
9  virtual ~InterruptEnable() {}
10  virtual bool isEnabled() { return true; }
11 };
12 
13 template <typename t>
15 {
16  public:
17  MappedInterruptEnable(t* enable_reg, t mask) :
18  enable_reg_(enable_reg),
19  mask_(mask)
20  {
21 
22  }
23 
25 
26  bool isEnabled() override
27  {
28  return *enable_reg_ & mask_;
29  };
30 
31  private:
33  t mask_;
34 };
35 
36 }
37 #endif
virtual bool isEnabled()
MappedInterruptEnable(t *enable_reg, t mask)
Page Table Entry (PTE) defines the composition of Page Frame Number (PFN) and relavant flags.
Definition: Benchmark.h:53