2021-03-27 | Paul Boddie | file changeset files shortlog | Introduced a preallocated memory object alongside the existing incremental allocation object (which has been renamed), both employing a common interface, thus permitting the use of a generic page collection with different page queue types to support both files and pipes. Changed the pipe paging to employ just two pipe regions in order to limit the amount of memory that would be used by each pipe. |
paul@6 | 1 | #pragma once |
paul@6 | 2 | |
paul@6 | 3 | #include "flexpage.h" |
paul@6 | 4 | |
paul@6 | 5 | /* The owner of a flexpage. */ |
paul@6 | 6 | |
paul@6 | 7 | class PageOwner |
paul@6 | 8 | { |
paul@6 | 9 | public: |
paul@6 | 10 | virtual ~PageOwner() |
paul@6 | 11 | { |
paul@6 | 12 | } |
paul@6 | 13 | |
paul@6 | 14 | virtual void fill(Flexpage *flexpage) |
paul@6 | 15 | { |
paul@6 | 16 | (void) flexpage; |
paul@6 | 17 | } |
paul@6 | 18 | |
paul@6 | 19 | virtual void flush(Flexpage *flexpage, bool purge) |
paul@6 | 20 | { |
paul@6 | 21 | (void) flexpage; (void) purge; |
paul@6 | 22 | } |
paul@6 | 23 | |
paul@6 | 24 | virtual void remove(Flexpage *flexpage) |
paul@6 | 25 | { |
paul@6 | 26 | (void) flexpage; |
paul@6 | 27 | } |
paul@6 | 28 | }; |
paul@6 | 29 | |
paul@6 | 30 | // vim: tabstop=4 expandtab shiftwidth=4 |