29#ifndef _util_group_memiter_h
30#define _util_group_memiter_h
32#include <util/group/memory.h>
49 size_t current_offset_;
79 void *
data() {
return (
void*) current_data_; }
81 int node() {
return node_; }
83 size_t offset() {
return current_offset_; }
85 size_t size() {
return current_size_; }
This iterates through data in a global array.
Definition memiter.h:40
int node()
The node on which the current subblock resides.
Definition memiter.h:81
void next()
Advance to the next subblock.
MemoryIter(void *data, distsize_t *offsets, size_t n)
Create the MemoryIter.
size_t size()
The size of the current subblock.
Definition memiter.h:85
void * data()
The local offset for the current block within the data array given to the constructor.
Definition memiter.h:79
int ready()
Returns true if there is more data to process.
Definition memiter.h:73
bool local(distsize_t offset, size_t size, int node)
Returns true if all data is local to node.
void begin(distsize_t offset, size_t size)
Initialize the iterator to a block of the global array.
size_t offset()
The local offset of the current subblock on the node.
Definition memiter.h:83
Contains all MPQC code up to version 3.
Definition mpqcin.h:14