generate.c#140    nciter_t iter;
#165            nc_get_iter(vsym,nciterbuffersize,&iter);
#169                nelems=nc_next_iter(&iter,odometerstartvector(odom),odometercountvector(odom));
#185        nc_get_iter(vsym,NC_MAX_UINT,&iter); /* effectively infinite */
#189            size_t nelems=nc_next_iter(&iter,odom->start,odom->count);
nc_iter.c#21   const size_t *dimsnciter_t *iter);
#88nc_next_iter(nciter_t *iter, /* returned opaque iteration state */
#93    if(iter->first) {
#94        for(i = 0; i < iter->right_dimi++) {
#98        start[iter->right_dim] = 0;
#99        count[iter->right_dim] = iter->rows;
#100        for(i = iter->right_dim + 1; i < iter->ranki++) {
#102            count[i] = iter->dimsizes[i];
#104        iter->first = 0;
#106        iter->more = up_start(iter->rankiter->dimsizesiter->right_dim,
#107                              iter->incstart);
#109        if(iter->cur < iter->numrows) {
#110            iter->inc = iter->rows;
#111            count[iter->right_dim] = iter->rows;
#112            iter->cur++;
#114            if(iter->leftover > 0) {
#115                count[iter->right_dim] = iter->leftover;
#116                iter->inc = iter->leftover;
#117                iter->cur = 0;
#122    iter->to_get = 1;
#123    for(i = 0; i < iter->ranki++) {
#124 iter->to_get *= count[i];
#126    return iter->more == 0 ? 0 : iter->to_get ;
#138       nciter_t *iter /* returned iteration state, don't mess with it */
#144    iter->rank = rank;
#145    iter->first = 1;
#146    iter->more = 1;
#148 iter->dimsizes[i] = dims[i];
#150    iter->right_dim = rank - 1;
#154            iter->right_dim--;
#160        iter->rows = bufsize/prod;
#161        iter->numrows = dims[iter->right_dim] / iter->rows;
#162        iter->leftover = dims[iter->right_dim] - iter->numrows * iter->rows;
#163        iter->cur = 1;
#164        iter->inc = iter->rows;
#168    iter->right_dim = 0;
#169    iter->rows = dims[0];
#170    iter->inc = 0;
nciter.c#24       nciter_t *iter /* returned iteration state, don't mess with it */
#29    size_t *dims = iter->dimsizes;
#31    iter->rank = rank;
#32    iter->first = 1;
#33    iter->more = 1;
#34    iter->chunked = chunked;
#36    if(iter->chunked == 0) { /* contiguous */
#37 iter->right_dim = rank - 1;
#41 iter->right_dim--;
#47     iter->rows = bufsize/prod;
#48     iter->numrows = dims[iter->right_dim] / iter->rows;
#49     iter->leftover = dims[iter->right_dim] - iter->numrows * iter->rows;
#50     iter->cur = 1;
#51     iter->inc = iter->rows;
#55 iter->right_dim = 0;
#56 iter->rows = dims[0];
#57 iter->inc = 0;
#62 prod *= iter->chunksizes[i];
#240nc_next_iter(nciter_t *iter, /* returned opaque iteration state */
#248    if(iter->first) {
#249 if(!iter->chunked) {  /* contiguous storage */
#250     for(i = 0; i < iter->right_dimi++) {
#254     start[iter->right_dim] = 0;
#255     count[iter->right_dim] = iter->rows;
#256     for(i = iter->right_dim + 1; i < iter->ranki++) {
#258 count[i] = iter->dimsizes[i];
#261     for(i = 0; i < iter->ranki++) {
#263 if(iter->chunksizes[i] <= iter->dimsizes[i])
#264     count[i] = iter->chunksizes[i];
#266     count[i] = iter->dimsizes[i];
#269 iter->first = 0;
#271 if(!iter->chunked) {  /* contiguous storage */
#272     iter->more = up_start(iter->rankiter->dimsizesiter->right_dim,
#273   iter->incstart);
#275     if(iter->cur < iter->numrows) {
#276 iter->inc = iter->rows;
#277 count[iter->right_dim] = iter->rows;
#278 iter->cur++;
#280 if(iter->leftover > 0) {
#281     count[iter->right_dim] = iter->leftover;
#282     iter->inc = iter->leftover;
#283     iter->cur = 0;
#287     iter->more = up_start_by_chunks(iter->rankiter->dimsizes,
#288     iter->chunksizesstart);
#290     for(i = 0; i < iter->ranki++) {
#291 int leftover = iter->dimsizes[i] - start[i];
#292 if(iter->chunksizes[i] <= iter->dimsizes[i])
#293     count[i] = iter->chunksizes[i];
#295     count[i] = iter->dimsizes[i];
#301    iter->to_get = 1;
#302    for(i = 0; i < iter->ranki++) {
#303 iter->to_get *= count[i];
#305    return iter->more == 0 ? 0 : iter->to_get ;


HyperKWIC - Version 7.20DA executed at 11:37 on 27 Oct 2017 | Polyhedron Solutions - INTERNAL USE | COMMERCIAL (Any O/S) SN 4AKIed