14using System.Runtime.InteropServices;
17, System.Collections.Generic.IList<OdRxClass>
19 private Object locker =
new Object();
20 private HandleRef swigCPtr;
22 [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
25 swigCPtr =
new HandleRef(
this, cPtr);
27 [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
29 return (obj ==
null) ?
new HandleRef(
null, IntPtr.Zero) : obj.swigCPtr;
38 global::System.GC.SuppressFinalize(
this);
41 protected virtual void Dispose(
bool disposing) {
43 if (swigCPtr.Handle != global::System.IntPtr.Zero) {
48 swigCPtr =
new global::System.Runtime.InteropServices.HandleRef(
null, global::System.IntPtr.Zero);
55 throw new ArgumentNullException(
"c");
62 : this(
GlobalsPINVOKE.new_OdRxClassPtrArray__SWIG_0(), bGCMemory_Own || MemoryManager.GetMemoryManager().GetCurrentTransaction() == null)
64 MemoryTransaction mTr = MemoryManager.GetMemoryManager().GetCurrentTransaction();
65 if (!bGCMemory_Own &&
null != mTr)
73 MemoryTransaction mTr = MemoryManager.GetMemoryManager().GetCurrentTransaction();
74 if (!bGCMemory_Own &&
null != mTr)
81 public OdRxClassPtrArray(
int capacity,
bool bGCMemory_Own =
false) : this(
GlobalsPINVOKE.new_OdRxClassPtrArray__SWIG_2(capacity), bGCMemory_Own || MemoryManager.GetMemoryManager().GetCurrentTransaction() == null) {
82 MemoryTransaction mTr = MemoryManager.GetMemoryManager().GetCurrentTransaction();
83 if (!bGCMemory_Own &&
null != mTr)
104 return getitem(index);
107 setitem(index,
value);
113 return (
int)capacity();
117 throw new ArgumentOutOfRangeException(
"Capacity");
118 reserve((uint)
value);
147 throw new ArgumentNullException(
"array");
149 throw new ArgumentOutOfRangeException(
"index",
"Value is less than zero");
151 throw new ArgumentOutOfRangeException(
"arrayIndex",
"Value is less than zero");
153 throw new ArgumentOutOfRangeException(
"count",
"Value is less than zero");
155 throw new ArgumentException(
"Multi dimensional array.",
"array");
156 if (index+count > this.
Count || arrayIndex+count > array.Length)
157 throw new ArgumentException(
"Number of elements to copy is too large.");
158 for (
int i=0; i<count; i++)
159 array.SetValue(getitemcopy(index+i), arrayIndex+i);
162 System.Collections.Generic.IEnumerator<
OdRxClass> System.Collections.Generic.IEnumerable<
OdRxClass>.GetEnumerator() {
163 return new OdRxClassPtrArrayEnumerator(
this);
166 System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator() {
167 return new OdRxClassPtrArrayEnumerator(
this);
180 , System.Collections.Generic.IEnumerator<OdRxClass>
183 private int currentIndex;
184 private object currentObject;
185 private int currentSize;
188 collectionRef = collection;
190 currentObject =
null;
191 currentSize = collectionRef.
Count;
197 if (currentIndex == -1)
198 throw new InvalidOperationException(
"Enumeration not started.");
199 if (currentIndex > currentSize - 1)
200 throw new InvalidOperationException(
"Enumeration finished.");
201 if (currentObject ==
null)
202 throw new InvalidOperationException(
"Collection modified.");
208 object System.Collections.IEnumerator.Current {
215 int size = collectionRef.
Count;
216 bool moveOkay = (currentIndex+1 < size) && (size == currentSize);
219 currentObject = collectionRef[currentIndex];
221 currentObject =
null;
228 currentObject =
null;
229 if (collectionRef.
Count != currentSize) {
230 throw new InvalidOperationException(
"Collection modified.");
236 currentObject =
null;
250 private uint size() {
256 private uint capacity() {
257 uint ret = GlobalsPINVOKE.OdRxClassPtrArray_capacity(swigCPtr);
258 if (GlobalsPINVOKE.SWIGPendingException.Pending)
throw GlobalsPINVOKE.SWIGPendingException.Retrieve();
262 private void reserve(uint n) {
263 GlobalsPINVOKE.OdRxClassPtrArray_reserve(swigCPtr, n);
264 if (GlobalsPINVOKE.SWIGPendingException.Pending)
throw GlobalsPINVOKE.SWIGPendingException.Retrieve();
272 private OdRxClass getitemcopy(
int index) {
273 MemoryManager mMan = MemoryManager.GetMemoryManager();
274 MemoryTransaction mTrans = mMan.GetCurrentTransaction();
285 ret = (OdRxClass)
Teigha.
Core.Helpers.odrxCreateObjectInternalUniversal(typeof(OdRxClass),ptr,
true);
288 if (GlobalsPINVOKE.SWIGPendingException.Pending)
throw GlobalsPINVOKE.SWIGPendingException.Retrieve();
292 private OdRxClass getitem(
int index) {
293 MemoryManager mMan = MemoryManager.GetMemoryManager();
294 MemoryTransaction mTrans = mMan.GetCurrentTransaction();
295 IntPtr ptr = GlobalsPINVOKE.OdRxClassPtrArray_getitem(swigCPtr, index);
297 OdRxClass ret =
null;
300 mTrans.AddObject((OdRxClass)
Teigha.
Core.Helpers.odrxCreateObjectInternalUniversal(typeof(OdRxClass),ptr,
true));
301 ret = (OdRxClass)
Teigha.
Core.Helpers.odrxCreateObjectInternalUniversal(typeof(OdRxClass),ptr,
false);
305 ret = (OdRxClass)
Teigha.
Core.Helpers.odrxCreateObjectInternalUniversal(typeof(OdRxClass),ptr,
true);
308 if (GlobalsPINVOKE.SWIGPendingException.Pending)
throw GlobalsPINVOKE.SWIGPendingException.Retrieve();
312 private void setitem(
int index, OdRxClass val) {
313 GlobalsPINVOKE.OdRxClassPtrArray_setitem(swigCPtr, index, OdRxClass.getCPtr(val));
314 if (GlobalsPINVOKE.SWIGPendingException.Pending)
throw GlobalsPINVOKE.SWIGPendingException.Retrieve();
static global::System.Exception Retrieve()
static void delete_OdRxClassPtrArray(global::System.Runtime.InteropServices.HandleRef jarg1)
static void OdRxClassPtrArray_Insert(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, HandleRef jarg3)
static void OdRxClassPtrArray_InsertRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, global::System.Runtime.InteropServices.HandleRef jarg3)
static void OdRxClassPtrArray_RemoveRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, int jarg3)
static void OdRxClassPtrArray_AddRange(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2)
static IntPtr OdRxClassPtrArray_getitemcopy(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2)
static int OdRxClassPtrArray_LastIndexOf(global::System.Runtime.InteropServices.HandleRef jarg1, HandleRef jarg2)
static uint OdRxClassPtrArray_size(global::System.Runtime.InteropServices.HandleRef jarg1)
static global::System.IntPtr OdRxClassPtrArray_Repeat(HandleRef jarg1, int jarg2)
static void OdRxClassPtrArray_RemoveAt(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2)
static void OdRxClassPtrArray_Add(global::System.Runtime.InteropServices.HandleRef jarg1, HandleRef jarg2)
static bool OdRxClassPtrArray_Contains(global::System.Runtime.InteropServices.HandleRef jarg1, HandleRef jarg2)
static void OdRxClassPtrArray_SetRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, global::System.Runtime.InteropServices.HandleRef jarg3)
static int OdRxClassPtrArray_IndexOf(global::System.Runtime.InteropServices.HandleRef jarg1, HandleRef jarg2)
static void OdRxClassPtrArray_Reverse__SWIG_0(global::System.Runtime.InteropServices.HandleRef jarg1)
static void OdRxClassPtrArray_Clear(global::System.Runtime.InteropServices.HandleRef jarg1)
static void OdRxClassPtrArray_resize(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2)
static bool OdRxClassPtrArray_Remove(global::System.Runtime.InteropServices.HandleRef jarg1, HandleRef jarg2)
static void OdRxClassPtrArray_Reverse__SWIG_1(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, int jarg3)
static global::System.IntPtr OdRxClassPtrArray_GetRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, int jarg3)
static HandleRef getCPtr(OdRxClass obj)
OdRxClassPtrArrayEnumerator(OdRxClassPtrArray collection)
void resize(uint logicalLength)
OdRxClassPtrArray(int capacity, bool bGCMemory_Own=false)
void RemoveRange(int index, int count)
bool Contains(OdRxClass value)
void InsertRange(int index, OdRxClassPtrArray values)
void Insert(int index, OdRxClass x)
virtual void Dispose(bool disposing)
OdRxClassPtrArray(bool bGCMemory_Own=false)
void AddRange(OdRxClassPtrArray values)
OdRxClassPtrArray(IntPtr cPtr, bool cMemoryOwn)
static HandleRef getCPtr(OdRxClassPtrArray obj)
void CopyTo(OdRxClass[] array)
int IndexOf(OdRxClass value)
OdRxClassPtrArray(System.Collections.ICollection c)
OdRxClassPtrArrayEnumerator GetEnumerator()
void Reverse(int index, int count)
OdRxClassPtrArray GetRange(int index, int count)
static OdRxClassPtrArray Repeat(OdRxClass value, int count)
void CopyTo(OdRxClass[] array, int arrayIndex)
OdRxClassPtrArray(OdRxClassPtrArray other, bool bGCMemory_Own=false)
int LastIndexOf(OdRxClass value)
bool Remove(OdRxClass value)
void CopyTo(int index, OdRxClass[] array, int arrayIndex, int count)
void SetRange(int index, OdRxClassPtrArray values)