memiter.h
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029 #ifdef __GNUC__
00030 #pragma interface
00031 #endif
00032
00033 #ifndef _util_group_memiter_h
00034 #define _util_group_memiter_h
00035
00036 #include <util/group/memory.h>
00037
00038 namespace sc {
00039
00040 class MemoryIter {
00041 private:
00042 distsize_t *offsets_;
00043 int n_;
00044
00045 void *data_;
00046
00047 char *current_data_;
00048 int current_size_;
00049 int current_offset_;
00050 int node_;
00051
00052 int ready_;
00053
00054 distsize_t offset_;
00055 int size_;
00056 public:
00057 MemoryIter(void *data, distsize_t *offsets, int n);
00058
00059
00060 void begin(distsize_t offset, int size);
00061 int ready() { return ready_; }
00062 void next();
00063
00064
00065 void *data() { return (void*) current_data_; }
00066 int node() { return node_; }
00067 int offset() { return current_offset_; }
00068 int size() { return current_size_; }
00069
00070
00071 int local(distsize_t offset, int size, int node);
00072 };
00073
00074 }
00075
00076 #endif
00077
00078
00079
00080
00081
Generated at Sat Aug 7 00:04:21 2004 for MPQC
2.2.2 using the documentation package Doxygen
1.3.8.