14using System.Runtime.InteropServices;
18, System.Collections.Generic.IList<OdDbObjectReactor>
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_OdDbObjectReactorArray__SWIG_0(), MemoryManager.GetMemoryManager().GetCurrentTransaction() == null)
65 MemoryTransaction mTr = MemoryManager.GetMemoryManager().GetCurrentTransaction();
74 MemoryTransaction mTr = MemoryManager.GetMemoryManager().GetCurrentTransaction();
82 public OdDbObjectReactorArray(
int capacity) : this(
TD_DbPINVOKE.new_OdDbObjectReactorArray__SWIG_2(capacity), MemoryManager.GetMemoryManager().GetCurrentTransaction() == null) {
83 MemoryTransaction mTr = MemoryManager.GetMemoryManager().GetCurrentTransaction();
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);
164 return new OdDbObjectReactorArrayEnumerator(
this);
167 System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator() {
168 return new OdDbObjectReactorArrayEnumerator(
this);
181 , System.Collections.Generic.IEnumerator<OdDbObjectReactor>
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.OdDbObjectReactorArray_capacity(swigCPtr);
259 if (TD_DbPINVOKE.SWIGPendingException.Pending)
throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
263 private void reserve(uint n) {
264 TD_DbPINVOKE.OdDbObjectReactorArray_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 = (OdDbObjectReactor)
Teigha.
Core.Helpers.odrxCreateObjectInternalUniversal(typeof(OdDbObjectReactor),ptr,
true);
289 if (TD_DbPINVOKE.SWIGPendingException.Pending)
throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
293 private OdDbObjectReactor getitem(
int index) {
294 MemoryManager mMan = MemoryManager.GetMemoryManager();
295 MemoryTransaction mTrans = mMan.GetCurrentTransaction();
296 IntPtr ptr = TD_DbPINVOKE.OdDbObjectReactorArray_getitem(swigCPtr, index);
298 OdDbObjectReactor ret =
null;
301 mTrans.AddObject((OdDbObjectReactor)
Teigha.
Core.Helpers.odrxCreateObjectInternalUniversal(typeof(OdDbObjectReactor),ptr,
true));
302 ret = (OdDbObjectReactor)
Teigha.
Core.Helpers.odrxCreateObjectInternalUniversal(typeof(OdDbObjectReactor),ptr,
false);
306 ret = (OdDbObjectReactor)
Teigha.
Core.Helpers.odrxCreateObjectInternalUniversal(typeof(OdDbObjectReactor),ptr,
true);
309 if (TD_DbPINVOKE.SWIGPendingException.Pending)
throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
313 private void setitem(
int index, OdDbObjectReactor val) {
314 TD_DbPINVOKE.OdDbObjectReactorArray_setitem(swigCPtr, index, OdDbObjectReactor.getCPtr(val));
315 if (TD_DbPINVOKE.SWIGPendingException.Pending)
throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
OdDbObjectReactorArrayEnumerator(OdDbObjectReactorArray collection)
OdDbObjectReactor Current
void resize(uint logicalLength)
OdDbObjectReactorArray(int capacity)
void Add(OdDbObjectReactor x)
int IndexOf(OdDbObjectReactor value)
static HandleRef getCPtr(OdDbObjectReactorArray obj)
void Insert(int index, OdDbObjectReactor x)
virtual void Dispose(bool disposing)
bool Contains(OdDbObjectReactor value)
OdDbObjectReactorArrayEnumerator GetEnumerator()
void CopyTo(OdDbObjectReactor[] array)
void CopyTo(OdDbObjectReactor[] array, int arrayIndex)
void RemoveRange(int index, int count)
void Reverse(int index, int count)
OdDbObjectReactorArray(System.Collections.ICollection c)
void InsertRange(int index, OdDbObjectReactorArray values)
void CopyTo(int index, OdDbObjectReactor[] array, int arrayIndex, int count)
bool Remove(OdDbObjectReactor value)
OdDbObjectReactorArray GetRange(int index, int count)
OdDbObjectReactorArray(OdDbObjectReactorArray other)
void AddRange(OdDbObjectReactorArray values)
void SetRange(int index, OdDbObjectReactorArray values)
OdDbObjectReactorArray(IntPtr cPtr, bool cMemoryOwn)
int LastIndexOf(OdDbObjectReactor value)
static OdDbObjectReactorArray Repeat(OdDbObjectReactor value, int count)
static HandleRef getCPtr(OdDbObjectReactor obj)
static global::System.Exception Retrieve()
static void OdDbObjectReactorArray_RemoveAt(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2)
static void OdDbObjectReactorArray_SetRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, global::System.Runtime.InteropServices.HandleRef jarg3)
static void OdDbObjectReactorArray_Reverse__SWIG_0(global::System.Runtime.InteropServices.HandleRef jarg1)
static void OdDbObjectReactorArray_AddRange(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2)
static void OdDbObjectReactorArray_Insert(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, HandleRef jarg3)
static bool OdDbObjectReactorArray_Remove(global::System.Runtime.InteropServices.HandleRef jarg1, HandleRef jarg2)
static bool OdDbObjectReactorArray_Contains(global::System.Runtime.InteropServices.HandleRef jarg1, HandleRef jarg2)
static int OdDbObjectReactorArray_IndexOf(global::System.Runtime.InteropServices.HandleRef jarg1, HandleRef jarg2)
static void OdDbObjectReactorArray_RemoveRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, int jarg3)
static void OdDbObjectReactorArray_InsertRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, global::System.Runtime.InteropServices.HandleRef jarg3)
static void OdDbObjectReactorArray_Add(global::System.Runtime.InteropServices.HandleRef jarg1, HandleRef jarg2)
static void OdDbObjectReactorArray_Clear(global::System.Runtime.InteropServices.HandleRef jarg1)
static void delete_OdDbObjectReactorArray(global::System.Runtime.InteropServices.HandleRef jarg1)
static void OdDbObjectReactorArray_resize(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2)
static global::System.IntPtr OdDbObjectReactorArray_Repeat(HandleRef jarg1, int jarg2)
static IntPtr OdDbObjectReactorArray_getitemcopy(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2)
static uint OdDbObjectReactorArray_size(global::System.Runtime.InteropServices.HandleRef jarg1)
static int OdDbObjectReactorArray_LastIndexOf(global::System.Runtime.InteropServices.HandleRef jarg1, HandleRef jarg2)
static void OdDbObjectReactorArray_Reverse__SWIG_1(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, int jarg3)
static global::System.IntPtr OdDbObjectReactorArray_GetRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, int jarg3)