public void SetToComplete(RedSea.Dimension dim) { // Search for position of dimension in present dimensions. int dimPos = -1; for (int pos = 0; pos < _presentDims.Length; ++pos) { if (_presentDims[pos] == dim) { dimPos = pos; break; } } // Dimension found? Debug.Assert(dimPos != -1, "Dimension not present, cannot be set!"); _dimOffsets[dimPos] = -1; }
/// <summary> /// Only include this slice of the data in this dimension. /// </summary> /// <param name="dim"></param> /// <param name="slice"></param> public void SetMember(RedSea.Dimension dim, int slice) { // Search for position of dimension in present dimensions. int dimPos = -1; for (int pos = 0; pos < _presentDims.Length; ++pos) { if (_presentDims[pos] == dim) { dimPos = pos; break; } } // Dimension found? Debug.Assert(dimPos != -1, "Dimension not present, cannot be set!"); _dimOffsets[dimPos] = slice; // We only chose one element. _dimLengths[dimPos] = 1; }