1.1 --- a/page_queue.h Sun Mar 28 22:38:45 2021 +0200
1.2 +++ b/page_queue.h Sun Mar 28 22:41:12 2021 +0200
1.3 @@ -4,6 +4,7 @@
1.4 #include <map>
1.5
1.6 #include "flexpage.h"
1.7 +#include "memory.h"
1.8 #include "page_owner.h"
1.9
1.10
1.11 @@ -22,11 +23,21 @@
1.12
1.13 class PageQueue
1.14 {
1.15 +protected:
1.16 +
1.17 + /* Helper methods. */
1.18 +
1.19 + virtual void discard(Queue &queue, Memory *memory);
1.20 +
1.21 + virtual bool remove(Queue &queue, Positions &positions, PageOwner *owner, Flexpage *flexpage);
1.22 +
1.23 public:
1.24 virtual ~PageQueue()
1.25 {
1.26 }
1.27
1.28 + virtual void close(Memory *memory) = 0;
1.29 +
1.30 virtual void pop(PageOwner **owner, Flexpage **flexpage) = 0;
1.31
1.32 virtual void push(PageOwner *owner, Flexpage *flexpage) = 0;