14using System.Runtime.InteropServices;
18, System.Collections.Generic.IList<OdDbDataCell>
20 private Object locker =
new Object();
21 private HandleRef swigCPtr;
23 [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
26 swigCPtr =
new HandleRef(
this, cPtr);
28 [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
30 return (obj ==
null) ?
new HandleRef(
null, IntPtr.Zero) : obj.swigCPtr;
39 global::System.GC.SuppressFinalize(
this);
42 protected virtual void Dispose(
bool disposing) {
44 if (swigCPtr.Handle != global::System.IntPtr.Zero) {
49 swigCPtr =
new global::System.Runtime.InteropServices.HandleRef(
null, global::System.IntPtr.Zero);
56 throw new ArgumentNullException(
"c");
63 : this(
TD_DbPINVOKE.new_OdDbDataCellArray__SWIG_0(), bGCMemory_Own || MemoryManager.GetMemoryManager().GetCurrentTransaction() == null)
65 MemoryTransaction mTr = MemoryManager.GetMemoryManager().GetCurrentTransaction();
66 if (!bGCMemory_Own &&
null != mTr)
74 MemoryTransaction mTr = MemoryManager.GetMemoryManager().GetCurrentTransaction();
75 if (!bGCMemory_Own &&
null != mTr)
82 public OdDbDataCellArray(
int capacity,
bool bGCMemory_Own =
false) : this(
TD_DbPINVOKE.new_OdDbDataCellArray__SWIG_2(capacity), bGCMemory_Own || MemoryManager.GetMemoryManager().GetCurrentTransaction() == null) {
83 MemoryTransaction mTr = MemoryManager.GetMemoryManager().GetCurrentTransaction();
84 if (!bGCMemory_Own &&
null != mTr)
105 return getitem(index);
108 setitem(index,
value);
114 return (
int)capacity();
118 throw new ArgumentOutOfRangeException(
"Capacity");
119 reserve((uint)
value);
148 throw new ArgumentNullException(
"array");
150 throw new ArgumentOutOfRangeException(
"index",
"Value is less than zero");
152 throw new ArgumentOutOfRangeException(
"arrayIndex",
"Value is less than zero");
154 throw new ArgumentOutOfRangeException(
"count",
"Value is less than zero");
156 throw new ArgumentException(
"Multi dimensional array.",
"array");
157 if (index+count > this.
Count || arrayIndex+count > array.Length)
158 throw new ArgumentException(
"Number of elements to copy is too large.");
159 for (
int i=0; i<count; i++)
160 array.SetValue(getitemcopy(index+i), arrayIndex+i);
163 System.Collections.Generic.IEnumerator<
OdDbDataCell> System.Collections.Generic.IEnumerable<
OdDbDataCell>.GetEnumerator() {
164 return new OdDbDataCellArrayEnumerator(
this);
167 System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator() {
168 return new OdDbDataCellArrayEnumerator(
this);
181 , System.Collections.Generic.IEnumerator<OdDbDataCell>
184 private int currentIndex;
185 private object currentObject;
186 private int currentSize;
189 collectionRef = collection;
191 currentObject =
null;
192 currentSize = collectionRef.
Count;
198 if (currentIndex == -1)
199 throw new InvalidOperationException(
"Enumeration not started.");
200 if (currentIndex > currentSize - 1)
201 throw new InvalidOperationException(
"Enumeration finished.");
202 if (currentObject ==
null)
203 throw new InvalidOperationException(
"Collection modified.");
209 object System.Collections.IEnumerator.Current {
216 int size = collectionRef.
Count;
217 bool moveOkay = (currentIndex+1 < size) && (size == currentSize);
220 currentObject = collectionRef[currentIndex];
222 currentObject =
null;
229 currentObject =
null;
230 if (collectionRef.
Count != currentSize) {
231 throw new InvalidOperationException(
"Collection modified.");
237 currentObject =
null;
251 private uint size() {
257 private uint capacity() {
258 uint ret = TD_DbPINVOKE.OdDbDataCellArray_capacity(swigCPtr);
259 if (TD_DbPINVOKE.SWIGPendingException.Pending)
throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
263 private void reserve(uint n) {
264 TD_DbPINVOKE.OdDbDataCellArray_reserve(swigCPtr, n);
265 if (TD_DbPINVOKE.SWIGPendingException.Pending)
throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
274 MemoryManager mMan = MemoryManager.GetMemoryManager();
275 MemoryTransaction mTrans = mMan.GetCurrentTransaction();
286 ret = (OdDbDataCell)
Teigha.
Core.Helpers.odrxCreateObjectInternalUniversal(typeof(OdDbDataCell),ptr,
true);
289 if (TD_DbPINVOKE.SWIGPendingException.Pending)
throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
293 private OdDbDataCell getitem(
int index) {
294 MemoryManager mMan = MemoryManager.GetMemoryManager();
295 MemoryTransaction mTrans = mMan.GetCurrentTransaction();
296 IntPtr ptr = TD_DbPINVOKE.OdDbDataCellArray_getitem(swigCPtr, index);
298 OdDbDataCell ret =
null;
301 mTrans.AddObject((OdDbDataCell)
Teigha.
Core.Helpers.odrxCreateObjectInternalUniversal(typeof(OdDbDataCell),ptr,
true));
302 ret = (OdDbDataCell)
Teigha.
Core.Helpers.odrxCreateObjectInternalUniversal(typeof(OdDbDataCell),ptr,
false);
306 ret = (OdDbDataCell)
Teigha.
Core.Helpers.odrxCreateObjectInternalUniversal(typeof(OdDbDataCell),ptr,
true);
309 if (TD_DbPINVOKE.SWIGPendingException.Pending)
throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
313 private void setitem(
int index, OdDbDataCell val) {
314 TD_DbPINVOKE.OdDbDataCellArray_setitem(swigCPtr, index, OdDbDataCell.getCPtr(val));
315 if (TD_DbPINVOKE.SWIGPendingException.Pending)
throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
OdDbDataCellArrayEnumerator(OdDbDataCellArray collection)
void AddRange(OdDbDataCellArray values)
OdDbDataCellArray(int capacity, bool bGCMemory_Own=false)
bool Contains(OdDbDataCell value)
void InsertRange(int index, OdDbDataCellArray values)
bool Remove(OdDbDataCell value)
void resize(uint logicalLength)
void RemoveRange(int index, int count)
int IndexOf(OdDbDataCell value)
OdDbDataCellArray(OdDbDataCellArray other, bool bGCMemory_Own=false)
static HandleRef getCPtr(OdDbDataCellArray obj)
int LastIndexOf(OdDbDataCell value)
void Reverse(int index, int count)
OdDbDataCellArrayEnumerator GetEnumerator()
virtual void Dispose(bool disposing)
OdDbDataCellArray GetRange(int index, int count)
OdDbDataCellArray(bool bGCMemory_Own=false)
OdDbDataCellArray(System.Collections.ICollection c)
void CopyTo(int index, OdDbDataCell[] array, int arrayIndex, int count)
OdDbDataCellArray(IntPtr cPtr, bool cMemoryOwn)
static OdDbDataCellArray Repeat(OdDbDataCell value, int count)
void CopyTo(OdDbDataCell[] array)
void CopyTo(OdDbDataCell[] array, int arrayIndex)
void SetRange(int index, OdDbDataCellArray values)
void Insert(int index, OdDbDataCell x)
static HandleRef getCPtr(OdDbDataCell obj)
static global::System.Exception Retrieve()
static void OdDbDataCellArray_AddRange(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2)
static void OdDbDataCellArray_SetRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, global::System.Runtime.InteropServices.HandleRef jarg3)
static bool OdDbDataCellArray_Contains(global::System.Runtime.InteropServices.HandleRef jarg1, HandleRef jarg2)
static uint OdDbDataCellArray_size(global::System.Runtime.InteropServices.HandleRef jarg1)
static void OdDbDataCellArray_RemoveRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, int jarg3)
static void OdDbDataCellArray_InsertRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, global::System.Runtime.InteropServices.HandleRef jarg3)
static void OdDbDataCellArray_Reverse__SWIG_0(global::System.Runtime.InteropServices.HandleRef jarg1)
static void OdDbDataCellArray_Add(global::System.Runtime.InteropServices.HandleRef jarg1, HandleRef jarg2)
static void OdDbDataCellArray_RemoveAt(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2)
static void delete_OdDbDataCellArray(global::System.Runtime.InteropServices.HandleRef jarg1)
static void OdDbDataCellArray_Clear(global::System.Runtime.InteropServices.HandleRef jarg1)
static void OdDbDataCellArray_Reverse__SWIG_1(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, int jarg3)
static global::System.IntPtr OdDbDataCellArray_Repeat(HandleRef jarg1, int jarg2)
static bool OdDbDataCellArray_Remove(global::System.Runtime.InteropServices.HandleRef jarg1, HandleRef jarg2)
static global::System.IntPtr OdDbDataCellArray_GetRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, int jarg3)
static int OdDbDataCellArray_LastIndexOf(global::System.Runtime.InteropServices.HandleRef jarg1, HandleRef jarg2)
static IntPtr OdDbDataCellArray_getitemcopy(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2)
static int OdDbDataCellArray_IndexOf(global::System.Runtime.InteropServices.HandleRef jarg1, HandleRef jarg2)
static void OdDbDataCellArray_Insert(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, HandleRef jarg3)
static void OdDbDataCellArray_resize(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2)