protected OneValueForEachColumnOrRow(IValuePerCell <T> next, WhichWay ww) { _next = next; _ww = ww; _cache = new Dictionary <int, T> (); _next.changed += (object sender, CellCoords e) => { _cache.Clear(); // TODO this is too heavy-handed, probably changed(this, e); }; }
public void SetGeometryVertexCounts(WhichWay which, int[] counts, out int successCode) { if (!_active) { _engine.SetGeometryVertexCounts(which, counts, out successCode); return; } try { DoStart("SetGeometryVertexCounts", which, counts); _engine.SetGeometryVertexCounts(which, counts, out successCode); } catch (System.Exception exception) { DoCatch(exception); successCode = SuccessCodeUnassigned; } finally { DoFinally(); } }
public void SetGeometryCoords(WhichWay which, GeometryPassingOptions options, double[] coords, out int successCode) { if (!_active) { _engine.SetGeometryCoords(which, options, coords, out successCode); return; } try { DoStart("SetGeometryCoords", which, options, coords); _engine.SetGeometryCoords(which, options, coords, out successCode); } catch (System.Exception exception) { DoCatch(exception); successCode = SuccessCodeUnassigned; } finally { DoFinally(); } }