| CARVIEW |
Select Language
HTTP/2 200
expires: Thu, 19 Nov 1981 08:52:00 GMT
cache-control: no-store, no-cache, must-revalidate
pragma: no-cache
set-cookie: PHPSESSID=5555j7u1468bqk986peluak7fb; path=/
content-type: text/html; charset=UTF-8
date: Sun, 28 Dec 2025 13:09:51 GMT
server: Apache
pkgsrc.se | The NetBSD package collection
archivers
audio
benchmarks
biology
cad
chat
comms
converters
cross
crosspkgtools
databases
devel
mdds
doc
editors
emulators
filesystems
finance
fonts
games
geography
graphics
ham
inputmethod
lang
mail
math
mbone
meta-pkgs
misc
multimedia
net
news
parallel
pkgtools
print
regress
security
shells
sysutils
textproc
time
wip
wm
www
x11
* = Virtual Category
Path to this page:
./devel/mdds, Collection of multi-dimensional data structure and indexing algorithms
[
Branch: CURRENT, Version: 3.1.0nb1, Package name: mdds-3.1.0nb1, Maintainer: pkgsrc-users
Multi-Dimensional Data Structure (mdds)
A collection of multi-dimensional data structure and indexing algorithm.
It implements the following data structure:
* flat segment tree
* segment tree
* rectangle set
Required to run:
[devel/boost-libs]
Required to build:
[devel/boost-headers] [pkgtools/cwrappers]
Navigation:
-
Browse pkgsrc
(this page)
archivers
audio
benchmarks
biology
cad
chat
comms
converters
cross
crosspkgtools
databases
devel
mddsdoc
editors
emulators
filesystems
finance
fonts
games
geography
graphics
ham
inputmethod
lang
math
mbone
meta-pkgs
misc
multimedia
net
news
parallel
pkgtools
regress
security
shells
sysutils
textproc
time
wip
wm
www
x11
* = Virtual Category
Path to this page:
./devel/mdds, Collection of multi-dimensional data structure and indexing algorithms
[
CVSweb ] [
Homepage ] [
RSS ] [
Required by ] [
Add to tracker ]
Branch: CURRENT, Version: 3.1.0nb1, Package name: mdds-3.1.0nb1, Maintainer: pkgsrc-users
Multi-Dimensional Data Structure (mdds)
A collection of multi-dimensional data structure and indexing algorithm.
It implements the following data structure:
* flat segment tree
* segment tree
* rectangle set
Required to run:
[devel/boost-libs]
Required to build:
[devel/boost-headers] [pkgtools/cwrappers]
Master sites:
Filesize: 623.609 KBVersion history: (Expand)
- (2025-10-24) Package has been reborn
- (2025-10-24) Package deleted from pkgsrc
- (2025-09-27) Updated to version: mdds-3.1.0nb1
- (2025-08-30) Updated to version: mdds-3.1.0
- (2025-07-15) Package has been reborn
- (2025-07-15) Package deleted from pkgsrc
CVS history: (Expand)
| 2025-09-27 11:57:41 by Thomas Klausner | Files touched by this commit (337) |
Log message: *: recursive bump for boost 1.89 |
| 2025-08-30 06:55:15 by Ryo ONODERA | Files touched by this commit (5) |
Log message:
devel/mdds: Update to 3.1.0
Changelog:
mdds 3.1.0
* multi_type_vector
* revised push_back() to also accept an rvalue reference.
* added emplace_back() to allow in-place construction of values. However,
due to limitation of how the value type is determined, the type of an
inserted value must be default constructible, and the call incurs the
overhead of one default construction.
* rtree
* the erase() methods to take their iterator parameter by value.
* flat_segment_tree
* both insert() and search() methods to take their const_iterator parameter
by value.
* the size of its const_iterator type has been reduced by not caching key
and value as its data members. Its size is now equal to the sum of the
sizes of two pointers and one boolean value. It also now returns
immutable references to the stored key and value.
mdds 3.0.0
* trie_map and packed_trie_map
* implemented equal (==) and non-equal (!=) operators in trie_map. Previously
only packed_trie_map implemented these operators.
* added support for storing values that are only movable but not copyable.
Note that when using move-only values, the copy constructors do not work.
Also, due to this change, the trie_map::pack() method is no longer const; it
now moves the stored values into the packed variant. If you need to
preserve the original values stored in the non-packed variant, make a copy
first before calling the trie_map::pack() method.
* simplified the template parameters so that the first template parameter
specifies the key type.
* revised value storage in packed_trie_map so that the size of the unit value
type of its internal buffer would not be forced to be the size of a pointer.
The user can now optionally specify a different-sized unsigned integer type
as the value type of the internal buffer. This will benefit mostly when the
number of stored values is small so that a smaller-sized integer type can
sufficiently store all values. In such cases, the size of the in-memory
buffer as well as the size of a state file will become smaller.
* implemented a method to allow traversal of the trie structure one node at a
time. This can be done by first calling the root_node() method to retrieve
the root node of the trie then traverse through its child nodes.
* added overview section in the documentation.
* segment_tree
* significantly revised its API design to give it necessary polish in order to
bring its usability to an acceptable level.
* added boundary_keys() method that returns a sorted sequence of boundary
keys.
* re-implemented the equal and non-equal operators to work with move-only
values.
* added documentation with code examples.
* sorted_string_map
* EntryT template parameter has been removed which was previously used to
optionally allow defining keys in the entry array as std::string_view.
After the removal of the template parameter, keys in the entry array are
always defined as std::string_view.
* added find_key() method to perform reverse lookup of the key from a value,
with two lookup algorithms to choose from - linear search and hash-based
search.
* added documentation with code examples.
|
| 2024-12-29 16:10:02 by Adam Ciarcinski | Files touched by this commit (235) |
Log message: revbump after updating boost |
| 2024-10-04 05:49:38 by Ryo ONODERA | Files touched by this commit (237) |
Log message: *: Recursive revbump from Boost 1.86.0 |
| 2023-12-30 22:07:30 by Zafer Aydogan | Files touched by this commit (1) |
Log message: https |
| 2023-12-29 19:25:02 by Adam Ciarcinski | Files touched by this commit (254) |
Log message: revbump for boost-libs |
| 2023-10-15 09:18:52 by Ryo ONODERA | Files touched by this commit (6) |
Log message:
mdds: Update to 2.1.1
Changelog:
2.1.1
flat_segment_tree
* added a method that returns a segment range object compatible with
ranged for loop.
* added a move constructor and a move assignment operator.
* added variants of search() and search_tree() that return a result data
structure that contains the value, the start and end keys of the range.
multi_type_vector
* added a range adaptor for mdds::mtv::element_block compatible with
ranged for loop.
2.1.0
general
* switched to using ax_valgrind_check for running memory tests. This
introduces additional build targets, such as check-valgrind to run
the tests under valgrind.
multi_type_vector
* delayed_delete_vector has been introduced as the new default storage
type for the element blocks. This storage type is optimized for use
cases where elements get repeatedly erased from the front of the array,
by delaying the actual deletion of the elements until much later.
This reduces the amount of element shifting associated with the element
deletions, which can be costly.
* added an additional template parameter to the element block types in
order to allow the underlying storage type to be specified per element
type. This can be used to switch between std::vector, std::deque,
delayed_delete_vector, or any other compatible custom container types.
sorted_string_map
* made the entry type a template parameter to allow optionally defining
the keys in the entry values as std::string_view.
2.0.3
general
* defined clang-format rules, and globally applied them to all active
source files.
multi_type_vector
* revised the block position lookup implementation to avoid using
the internal STL iterators. The new implementation should be able to
handle invalid position hints more gracefully without potential process
termination.
2.0.2
multi_type_vector
* added optional trace function that gets called on every called public
method.
|
| 2023-07-19 16:53:20 by Nia Alarie | Files touched by this commit (2) |
Log message: mdds: Require a C++17 compiler, as the configure script does. |
