protected RowBookmark(RowSet rs, SRow ob, SDict <long, Serialisable> a, int p) : base(p) { _rs = rs; _ob = ob; _ags = a; }
protected IndexRowBookmark(IndexRowSet irs, SRow ob, MTreeBookmark <Serialisable> mbm, int p) : base(irs, ob, p) { _irs = irs; _mbm = mbm; }
public bool Equals(SRow row) { return(_place == SPlace.board && _row == row); }
public SLocation(SRow row) { _place = SPlace.board; _row = row; }
public SRow[] QueryRows(int lRowCount) { if (lRowCount > MaxQueryRowCount) throw new Exception("Max row count is " + MaxQueryRowCount.ToString()); IntPtr pRowSet = IntPtr.Zero; HRESULT hr = pIMAPITableQueryRows(this.ptr, lRowCount, out pRowSet); if (hr != HRESULT.S_OK) { cemapi.MAPIFreeBuffer(pRowSet); throw new Exception("QueryRows failed: " + hr.ToString()); } uint cRows = (uint)Marshal.ReadInt32(pRowSet); SRow[] sRows = new SRow[cRows]; if (cRows < 1) { FreeProws(pRowSet); return sRows; } int pIntSize = IntPtr.Size, intSize = Marshal.SizeOf(typeof(Int32)); IntPtr rows = (IntPtr)(((uint)pRowSet) + intSize); for (int i = 0; i < cRows; i++) { uint pRowOffset = (uint)(rows) + (uint)(i * SizeOfSRow); uint cValues = (uint)Marshal.ReadInt32((IntPtr)(pRowOffset + intSize)); uint pProps = (uint)Marshal.ReadInt32((IntPtr)(pRowOffset + intSize * 2)); IPropValue[] lpProps = new IPropValue[cValues]; for (int j = 0; j < cValues; j++) // each column { pSPropValue lpProp = (pSPropValue)Marshal.PtrToStructure((IntPtr)(pProps + j * cemapi.SizeOfSPropValue), typeof(pSPropValue)); lpProps[j] = new SPropValue(lpProp); } sRows[i].propVals = lpProps; } FreeProws(pRowSet); return sRows; }
public static string[] PropsToStringArray(SRow[] rows, int propIndex) { int len = rows.Length; string[] strings = new string[len]; for (int i = 0; i < len; i++) strings[i] = rows[i].propVals[propIndex].AsString; return strings; }
public static CardPredicat located(SRow row) { return((c) => { return c.location.Equals(row); }); }