diff --git a/include/memory_space.h b/include/memory_space.h index b572e37b4299968b33e0d72722fa16e93d8372a5..4c65419832c79f1100e9192fd523871648a3ca25 100644 --- a/include/memory_space.h +++ b/include/memory_space.h @@ -44,9 +44,11 @@ class MemorySpace_t : public std::map<RangeAddress_t,char> // range operatations virtual void SplitFreeRange(RangeAddress_t addr)=0; + virtual void SplitFreeRange(Range_t range)=0; virtual void MergeFreeRange(RangeAddress_t addr)=0; virtual RangeSet_t::iterator FindFreeRange(RangeAddress_t addr)=0; virtual Range_t GetFreeRange(int size)=0; + virtual std::list<Range_t> GetFreeRanges(size_t size = 0) = 0; virtual std::pair<RangeSet_t::const_iterator,RangeSet_t::const_iterator> GetNearbyFreeRanges(const RangeAddress_t hint, size_t count = 0) = 0; virtual void AddFreeRange(Range_t newRange)=0;