From 7c946370e0245baf306568d8bb361f40e6a6f668 Mon Sep 17 00:00:00 2001 From: Brian Potchik Date: Thu, 7 Nov 2024 14:34:07 -0500 Subject: Add APIs to support bulk segment addition operations. --- binaryview.cpp | 30 ++++++++++++++++++++++++++---- 1 file changed, 26 insertions(+), 4 deletions(-) (limited to 'binaryview.cpp') diff --git a/binaryview.cpp b/binaryview.cpp index 32aff542..d88c4548 100644 --- a/binaryview.cpp +++ b/binaryview.cpp @@ -4726,8 +4726,25 @@ bool BinaryView::GetAddressInput(uint64_t& result, const string& prompt, const s } -void BinaryView::AddAutoSegment( - uint64_t start, uint64_t length, uint64_t dataOffset, uint64_t dataLength, uint32_t flags) +void BinaryView::BeginBulkAddSegments() +{ + BNBeginBulkAddSegments(m_object); +} + + +void BinaryView::EndBulkAddSegments() +{ + BNEndBulkAddSegments(m_object); +} + + +void BinaryView::CancelBulkAddSegments() +{ + BNCancelBulkAddSegments(m_object); +} + + +void BinaryView::AddAutoSegment(uint64_t start, uint64_t length, uint64_t dataOffset, uint64_t dataLength, uint32_t flags) { BNAddAutoSegment(m_object, start, length, dataOffset, dataLength, flags); } @@ -4745,13 +4762,18 @@ void BinaryView::RemoveAutoSegment(uint64_t start, uint64_t length) } -void BinaryView::AddUserSegment( - uint64_t start, uint64_t length, uint64_t dataOffset, uint64_t dataLength, uint32_t flags) +void BinaryView::AddUserSegment(uint64_t start, uint64_t length, uint64_t dataOffset, uint64_t dataLength, uint32_t flags) { BNAddUserSegment(m_object, start, length, dataOffset, dataLength, flags); } +void BinaryView::AddUserSegments(const vector& segments) +{ + BNAddUserSegments(m_object, segments.data(), segments.size()); +} + + void BinaryView::RemoveUserSegment(uint64_t start, uint64_t length) { BNRemoveUserSegment(m_object, start, length); -- cgit v1.3.1